sobota 3. listopadu 2007

Záloha a obnova systému = NO PROBLEMO

Narozdíl od majoritních Windows, ve kterých je otázka zálohování systému řešena přemrštěně drahými externími aplikacemi, Linux se může pochlubit několik desítek let starým archivovacím programem tar, který vše vyřeší.

Jak na to?
První věcí, kterou bychom před samotným procesem zálohování měli zkontrolovat je fakt, že systém běží tak jak má, v opačném případě by totiž nemuselo být ideální obnovovat OS do tohoto stavu. Zjistíme-li, že je vše v pořádku odpojíme všechny namountované souborové systémy, k čemuž slouží příkaz mount -a -f, kde parametr -a indikuje, že se mají odpojit všechny připojené filesystems a parametr -f(force) značí násilné odpojení. Běží-li Vám na stroji servery pro sdílení souborů(FTP), je dobré zastavit jejich činnost + do /etc/motd napsat něco ve smyslu "Právě probíhá údržba systému". Místo /etc/motd můžete použít libovolný konf. soubor, v němž se nachází uvítací hlášení serveru(systému).

Nyní zadáme systému následující požadavek:
tar -c -p -z -f /backup.tgz --exclude=/lost+found --exclude=/proc --exclude=/sys --exclude=/mnt --exclude=/media --exclude=/backup.tgz /
Tento příkaz se postará o vlastní proces zálohování. Soubor zálohy naleznete pak v kořenovém adresáři jako backup.tgz.

Jak obnovit?
tar xvpz --same-owner -f backup.tgz -C /
mkdir /proc
mkdir /lost+found
mkdir /mnt
mkdir /sys
mkdir /media


Jak si usnadnit práci?
Zálohujete-li svá data častěji a nechtějí se vám zadávat výše popisované příkazy, je zde ještě jedna možnost - démon cron. Jedná se o službu, která zajišťuje provádění naplánovaných příkazů. Řekněme, že v domovském adresáři superuživatele máme podadresář scripts, který obsahuje zaloha.sh a obnova.sh a že chceme zálohovat každé úterý, čtvrtek a sobotu ve 23:00. Připišme tedy následující řádek do
/etc/crontab
0 23 * * 2,4,6 root sh /root/scripts/zaloha.sh

Syntaxe tohoto souboru zasluhuje trošku podrobnější rozbor. Řádka je rozdělena na sedm úseků oddělených mezerami. Stojí-li na místě nějakého z úseků hvězdička, znamená to, že jej vynecháváme(každý - pozor na hvězdičky na místě minut, může vám to udělat pořádnou paseku v systému).
A zde je seznam hodnot, jak za sebou následují:
1 minuta
2 hodina
3 den v měsíci
4 měsíc
5 den v týdnu(neděle = 0, pondělí = 1.... sobota = 6)
6 jméno uživatele, pod kterým bude vykonán daný úkon
7 Program, který bude vykonán(zde již může být libovolný počet mezer)

1 komentář:

Anonymní řekl(a)...

Hezký článek!