From ISP admin
Zálohování systému
Tato stránka je v intenzivní přípravě, počítejte proto s nekompletními texty, chybami, staršími screenshoty a místy nesedícími linky. Pruběh změn můžete sledovat na stránce Poslední změny.
Zásadní věc, která bezesporu patří mezi hlavní úkoly při provozu systému je zálohování. Je důležité si uvědomit, že celý business Vaší ISP firmy bude nyní velmi závislý na dostupnosti systému ISPadmin. Obnovení systému ze zálohy je možné provést v řádech desítek minut, což je pro firmu zajištující konektivitu stovkám domácností a desítkám firem v případě nenadálého selhání systému zcela zásadní.
Zkrátka zálohy jsou naprostý základ pro úspěšné provozování jakéhokoliv systému takového rozsahu jako je ISPadmin, proto zálohování nepodceňujte.
Systém ISPadmin disponuje funkcí automatického zálohování dat. Zálohy lze ukládat jak lokálně (SW/HW RAID), tak i na vzdálené uložiště (FTP, NFS, CIFS). Lokální zálohy je vhodné ukládat na jiný než systémový oddíl. Pokud by došlo k zaplnění systémového disku zálohami, mohlo by dojít k poškození systému. Systémovou zálohu je také možné ukládat na FTP server, NFS, CIFS uložiště a podobně.
Nastavení zálohování
Následující odkaz ukazuje na stránku, kde je kompletně popsáno nastavení zálohování v systému ISPadmin.
Je možné zálohovat vlastní systém ISPadmin, zálohovat konfigurace routerů a také je možné posílat si zálohy přes zašifrované spojení SFTP na svůj FTP server.
Nastavení / Systémové nastavení / Zálohování
Šifrování záloh systému i záloh routerů
Heslo můžete nastavit/změnit prostřednictvím scriptu /usr/local/script/ispadmin/ispadmin_backup_crypt.pl
/usr/local/script/ispadmin/ispadmin_backup_crypt.pl
Pokud nastavíte jako heslo hodnotu -1, tak se šifrování vypne a v budoucích zálohách se již šifrování provádět nebude.
V průběhu nastavení/změny hesla budete dotázání na zadání emailové adresy. Na tento email poté dorazí zpráva o změně hesla do záloh a bude obsahovat jak staré tak i nově nastavené heslo. Tento email buď nemažte nebo si jeho obsah vytiskněte a někam pečlivě uložte, protože při obnovení dat ze zálohy bude heslo potřeba.
Záloha systému
Menu: Ostatní / Zálohy / Systém Umístění: /data/backup/incremental
Pravidelné a plně automatické zálohy systému se vytváří každý den v noci, kdy je zátěž serveru nejnižší. Záloha systému je celková nebo mohou být nastaveny přírůstkové zálohy. Doporučujeme udržovat minimálně pět záloh zpětně, aby se například nepřepisovala pouze jedna systémová záloha stále dokola.
V ideálním případě je vhodné aktivovat kopírování záloh na FTP server. V nejhorším případě, když by selhal hardware (selhání řadiče, vyhoření serveru) nebo by byla celá instalace zničena chybou lidského faktoru (formát disku, neúmyslné odstranění zálohy), jsou jedinou záchranou právě vzdálené zálohy uložené mimo provozovaný server. Není možné se spoléhat pouze na RAID. RAID1 není záloha, ale pouze technické řešení dostupnosti systému při selhání jednoho disku, i z tohoto důvodu je vhodné mít uloženy systémové zálohy v bezpečí vzdáleného uložiště.
Pro odkopírovávání záloh můžete použít svůj FTP server nebo si můžete posílat zálohy do našeho řešení Netbackup. FTP přenos může být samozřejmě šifrovaný.
Ruční záloha systému
Okamžitou zálohu systému ISPadmin je možné v příkazové řádce spustit příkazem "ispadmin_backup backup all".
ispadmin_backup backup all
V tomto případě se opět provede kompletní záloha systému ISPadmin do adresáře "/data/backup/incremental/". Celá záloha obvykle trvá mezi 10 až 30 minutami v závislosti na počtu klientů respektive na množství dat do záloh zálohovaných. Pokud máte třeba 8 GB zálohy a navíc hodně zatížený server, může to trvat i déle. Je však potřeba počítat s tím, že se může po tuto dobu projevit zpomalení webového rozhraní.
ZÁLOHOVÁNÍ SYSTÉMU - PŘÍKLADY
Příkazem ispadmin_backup zobrazíte nápovědu k zálohovacímu a obnovovacímu scriptu.
ispadmin_backup
+ - - - - - - - - - - - - - - - - - - - - [ ispadmin_backup ] - - - - - - - - - - - - - - - - - - - - - +
This script can help you to backup and recover of ISPamin backup easy way. Well, you can run script this way:
ispadmin_backup [help] [debug] [source-path=SRC-PATH] [path=PATH] MODE SCOPE [BID]
[PATH] Path to the ISPadmin's restore directory. Absolute or relative path can be used. Default path is root / !!. [SRC-PATH] Path to the ISPadmin's source directory for recovery or Backup directory. Absolute path can be used. Default path is ISPadmin backup directory /data/backup/incremental/ [MODE] Determine function of script: backup - backup system restore - restore system from [PATH] [SCOPE] all - recover or backup all files important parts of the ISPamin (auto mode for db, etc, data) etc - recover or backup files in /etc db - backup the binary MySQL database (only ispadmin,system,mysql db) and backup all dump database to /db_dump - recovery the binary MySQL database (only ispadmin,system,mysql db) db_dump - recovery all dump databases graph - recover or backup graph data in ISPadmin (RRD files) scripts - recover or backup scripts of ISPadmin (/usr/local/script/ispadmin) ispadmin - recover or backup ISPadmin data (/data/support) domain - recover or backup Domain [BID] Determine incremental level. If is not given, last backup will be executed as default.
First argument is required ( or backup all ) or second one is optional. If recover MODE is not given, full recover will be executed as default!
And finaly, a simple example of usage: ispadmin_backup restore scripts 401 ispadmin_backup path=/backup/graph/ restore all ispadmin_backup backup ispadmin_backup source-path=/home/toor/backup/ backup ispadmin_backup restore sample-domain.eu all ispadmin_backup restore sample-domain.eu all 322
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (c) NET service solution, s.r.o. - +
1.) Standardní záloha celého systému ISPadmin do defaultního adresáře /data/backup/incremental/.
Po spuštění zálohy budete ještě dotázáni, zda opravdu chcete zálohu udělat.
ispadmin_backup backup all
Are you sure want to do the backup - ALL to /data/backup/incremental/ !!? [y/n]:
Zobrazení souborů zálohy:
ls -la /data/backup/incremental/
total 9
drwxr-xr-x 9 virtual virtual 1024 Mar 20 12:45 .
drwxr-xr-x 4 virtual root 1024 Mar 20 10:27 ..
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 db
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 db_dump
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 db_dump_last
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 etc
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 graph
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 ispadmin
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 scripts
2.) Záloha celého systému ISPadmin do uživatelského adresáře např. /new/backup.
ispadmin_backup source-path=/new/backup backup all
Are you sure want to do the backup - ALL to /data/backup/incremental/ !!? [y/n]:
Zobrazení souborů zálohy:
ls -la /new/backup/
total 9
drwxr-xr-x 9 virtual root 1024 Mar 27 10:02 .
drwxr-xr-x 3 root root 1024 Mar 27 10:02 ..
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 db
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 db_dump
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 db_dump_last
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 etc
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 graph
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 ispadmin
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 scripts
3.) Záloha jen části systému (jsou povolené tyto volby):
- ispadmin - systém ISPadmin (/data/support/ispadmin)
ispadmin_backup backup ispadmin
- scripts - záloha scriptů ISPadmin
ispadmin_backup backup scripts
- graph - záloha všech uživatelských grafů ISPadmin
ispadmin_backup backup graph
- etc - záloha celého konfig adresáře linuxu
ispadmin_backup backup etc
- db - záloha binárních DB - tabulky ispadmin, system, mysql
- záloha všech dumpovaných databází mysql do adr. ./db_dump
- vytvořen adresář ./db_dump_last/, kde jsou uloženy tyto aktuální dumpované soubory z poslední zálohy
ispadmin_backup backup db
OBNOVA SYSTÉMU - PŘÍKLADY
Před jakýmkoliv obnovováním si vždy zazálohujte aktuální data!
Důležité adresáře jsou /data/support, /usr/local/script/ispadmin, /var/lib/mysql a /etc
1.) Klasická obnova poslední(nejnovější) zálohy celého systému ISPadmin do "ostrých" adresářů
Z uživatelova adresáře se zálohami /data/backup/incremental/ do /. Dojde k přepsání dat systému!!! Používejte tedy jen v případě, že máte data systému ISPadmin poškozená a chcete je nahradit daty ze zálohy.
Pokud máte zálohy šifrované, budete ještě dotázáni na heslo do záloh a následně se Vás program ještě jednou zeptá, zda chcete obnovu dat opravdu udělat.
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore all
Type ZIP password : Vaše_heslo_do_záloh
Restore script started.
Recover will destroy actual data on the server! Do backup before the recovery is a good idea.
Are you sure want to do the restore - from /data/backup/incremental/ directory to / !!? [y/n]:
Tímto způsobem si můžete obnovit data z poslední full zálohy včetně incrementů od poslední full zálohy(pokud jsou nastaveny).
2.) Obnova "starší" zálohy celého systému ISPadmin do "ostrých" adresářů
Z uživatelova adresáře se zálohami /data/backup/incremental/ do /. Dojde k přepsání dat systému!!! Používejte tedy jen v případě, že máte data systému ISPadmin poškozená a chcete je nahradit daty ze zálohy.
Dejme tomu, že je 30.3.2012 a Vy chcete obnovit data z 27.3.2012.
Postup bude následující: Je potřeba zjistil číslo zálohy, která se udělala 27.3.2012. To zjistíte pomocí příkazu:
ls -la /data/backup/incremental/ispadmin/
total 188712
drwxr-xr-x 2 virtual virtual 2048 Mar 29 07:51 .
drwxr-xr-x 9 virtual virtual 1024 Mar 27 10:55 ..
-rw-r--r-- 1 virtual root 13697 Mar 29 07:46 backup2l_ispadmin.conf
-rw-r--r-- 1 virtual root 390 Mar 26 10:55 Ispadmin_ispadmin.1.check
-rw-r--r-- 1 virtual root 107 Mar 26 10:55 Ispadmin_ispadmin.1.error.gz
-rw-r--r-- 1 virtual root 106410 Mar 26 10:55 Ispadmin_ispadmin.1.list.gz
lrwxrwxrwx 1 virtual root 27 Mar 26 10:55 Ispadmin_ispadmin.1.new.gz -> Ispadmin_ispadmin.1.list.gz
-rw-r--r-- 1 virtual root 51 Mar 26 10:55 Ispadmin_ispadmin.1.obsolete.gz
-rw-r--r-- 1 virtual root 440 Mar 26 10:55 Ispadmin_ispadmin.1.skipped.gz
-rw-r--r-- 1 virtual root 64043583 Mar 26 10:55 Ispadmin_ispadmin.1.tar.gz
-rw-r--r-- 1 virtual root 390 Mar 27 13:15 Ispadmin_ispadmin.2.check
-rw-r--r-- 1 virtual root 107 Mar 27 13:15 Ispadmin_ispadmin.2.error.gz
-rw-r--r-- 1 virtual root 106139 Mar 27 13:15 Ispadmin_ispadmin.2.list.gz
lrwxrwxrwx 1 virtual root 27 Mar 27 13:15 Ispadmin_ispadmin.2.new.gz -> Ispadmin_ispadmin.2.list.gz
-rw-r--r-- 1 virtual root 51 Mar 27 13:15 Ispadmin_ispadmin.2.obsolete.gz
-rw-r--r-- 1 virtual root 436 Mar 27 13:15 Ispadmin_ispadmin.2.skipped.gz
-rw-r--r-- 1 virtual root 64043616 Mar 27 13:15 Ispadmin_ispadmin.2.tar.gz
-rw-r--r-- 1 virtual root 390 Mar 29 07:47 Ispadmin_ispadmin.3.check
-rw-r--r-- 1 virtual root 107 Mar 29 07:47 Ispadmin_ispadmin.3.error.gz
-rw-r--r-- 1 virtual root 106139 Mar 29 07:46 Ispadmin_ispadmin.3.list.gz
lrwxrwxrwx 1 virtual root 27 Mar 29 07:47 Ispadmin_ispadmin.3.new.gz -> Ispadmin_ispadmin.3.list.gz
-rw-r--r-- 1 virtual root 51 Mar 29 07:46 Ispadmin_ispadmin.3.obsolete.gz
-rw-r--r-- 1 virtual root 436 Mar 29 07:46 Ispadmin_ispadmin.3.skipped.gz
-rw-r--r-- 1 virtual root 64043616 Mar 29 07:47 Ispadmin_ispadmin.3.tar.gz
Nyní již víme, že data, která chceme obnovit ze dne 27.3.2012 mají číslo 2. Můžeme tedy přistoupit k samotné obnově. Napíšeme příkaz pro obnovu a na jeho konec dopíšeme zjištěné číslo zálohy. Tím zajistíme, že nebude obnovena poslední záloha z 29.3.2012, nýbrž bude obnovena záloha z 27.3.2012.
Pokud máte zálohy šifrované, budete ještě dotázáni na heslo do záloh a následně se Vás program ještě jednou zeptá, zda chcete obnovu dat opravdu udělat.
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore all 2
Type ZIP password : Vaše_heslo_do_záloh
Restore script started.
Recover will destroy actual data on the server! Do backup before the recovery is a good idea.
Are you sure want to do the restore - from /data/backup/incremental/ directory to / !!? [y/n]:
Tímto způsobem si můžete obnovit data z jakékoliv full zálohy či jakýchkoliv incrementů včetně předcházející full zálohy(pokud jsou nastaveny).
3.) Obnova jednotlivých části systému viz. backup části systému
- OBNOVA DATABÁZE:
Dejme tomu, že se Vám poškodila vlivem tvrdého restartu či vlivem vypnutí elektřiny databáze ISPadmin. Dnes je 30.3.2012 a Vy víte, že pravděpodobně k poškození databáze došlo někdy po 27.3.2012, protože v této době byl výpadek proudu a server neběžel.
Potřebujete tedy obnovit databázi ze dne 27.3.2012.
Máte v zásadě 3 možnosti.
1) obnovit si celého ISPadmina viz. návod výše
2) obnovit si jen databázi z textové zálohy(z dumpu)
3) obnovit si jen databázi z binární zálohy
U možnosti 2) a 3) můžete obnovit poslední textovou či binární zálohu pomocí příkazů:
Obnova poslední textové zálohy databáze:
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore db_dump all
Obnova poslední binární zálohy databáze:
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore db all
Nebo můžete obnovit konkrétní starší textovou či binární zálohu. To bude náš případ, protože my potřebujeme v našem vzorovém případě obnovit 3 dny starou zálohu databáze.
Jak postupovat? Musíme opět zjistit číslo zálohy (dle datumu vytvoření zálohy) která má být použita pro obnovu.
ls -la /data/backup/incremental/db_dump/
total 6198
drwxr-xr-x 2 virtual virtual 2048 Mar 29 13:13 .
drwxr-xr-x 9 virtual virtual 1024 Mar 26 10:55 ..
-rw-r--r-- 1 virtual root 384 Mar 26 10:55 Ispadmin_db_dump.1.check
-rw-r--r-- 1 virtual root 47 Mar 26 10:55 Ispadmin_db_dump.1.error.gz
-rw-r--r-- 1 virtual root 234 Mar 26 10:55 Ispadmin_db_dump.1.list.gz
lrwxrwxrwx 1 virtual root 26 Mar 26 10:55 Ispadmin_db_dump.1.new.gz -> Ispadmin_db_dump.1.list.gz
-rw-r--r-- 1 virtual root 50 Mar 26 10:55 Ispadmin_db_dump.1.obsolete.gz
-rw-r--r-- 1 virtual root 49 Mar 26 10:55 Ispadmin_db_dump.1.skipped.gz
-rw-r--r-- 1 virtual root 1572473 Mar 26 10:55 Ispadmin_db_dump.1.tar.gz
-rw-r--r-- 1 virtual root 384 Mar 27 13:15 Ispadmin_db_dump.2.check
-rw-r--r-- 1 virtual root 47 Mar 27 13:15 Ispadmin_db_dump.2.error.gz
-rw-r--r-- 1 virtual root 238 Mar 27 13:15 Ispadmin_db_dump.2.list.gz
lrwxrwxrwx 1 virtual root 26 Mar 27 13:15 Ispadmin_db_dump.2.new.gz -> Ispadmin_db_dump.2.list.gz
-rw-r--r-- 1 virtual root 50 Mar 27 13:15 Ispadmin_db_dump.2.obsolete.gz
-rw-r--r-- 1 virtual root 49 Mar 27 13:15 Ispadmin_db_dump.2.skipped.gz
-rw-r--r-- 1 virtual root 1572887 Mar 27 13:15 Ispadmin_db_dump.2.tar.gz
-rw-r--r-- 1 virtual root 384 Mar 29 07:46 Ispadmin_db_dump.3.check
-rw-r--r-- 1 virtual root 47 Mar 29 07:46 Ispadmin_db_dump.3.error.gz
-rw-r--r-- 1 virtual root 234 Mar 29 07:46 Ispadmin_db_dump.3.list.gz
lrwxrwxrwx 1 virtual root 26 Mar 29 07:46 Ispadmin_db_dump.3.new.gz -> Ispadmin_db_dump.3.list.gz
-rw-r--r-- 1 virtual root 50 Mar 29 07:46 Ispadmin_db_dump.3.obsolete.gz
-rw-r--r-- 1 virtual root 49 Mar 29 07:46 Ispadmin_db_dump.3.skipped.gz
-rw-r--r-- 1 virtual root 1572877 Mar 29 07:46 Ispadmin_db_dump.3.tar.gz
Tímto způsobem jsme zjistili, že záloha databáze, kterou chceme použít má číslo 2.
Nyní tedy můžeme použít příkaz pro obnovu:
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore db_dump all 2
Obnovovací script se Vám u každé databáze zeptá, jestli ji chcete opravdu obnovit. stačí mačkat Enter.
Analogicky si zjistíte číslo zálohy když potřebujete udělat obnovu binární databáze a následně použijete příkaz:
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore db all 2
4.) Obnova celého systému ISPadmin do adresáře /backup
Tuto volbu využijete zejména tehdy, chcete-li si projít data ze zálohy a něco si v nich zjistit (třeba jestli v této záloze nějaký soubor je či jestli tam chybí a bude zřejmě až ve starších zálohách atp.)
ispadmin_backup restore all
Type ZIP password : Vaše_heslo_do_záloh
Restore script started.
Recover will destroy actual data on the server! Do backup before the recovery is a good idea.
Are you sure want to do the restore - from /data/backup/incremental/ directory to /backup/ !!? [y/n]:
Zobrazení obsahu adresáře /backup
ls -la /backup
total 6
drwxr-xr-x 6 root root 1024 Mar 27 11:00 .
drwxr-xr-x 33 root root 1024 Mar 27 10:53 ..
drwxr-xr-x 4 root root 1024 Mar 27 11:00 data
drwxr-xr-x 4 root root 1024 Mar 27 11:00 etc
drwxr-xr-x 3 root root 1024 Mar 27 11:00 restore_mysql_dump
drwxr-xr-x 3 root root 1024 Mar 27 11:00 usr
Obnova systémové zálohy obecně
Před samotným obnovením doporučujeme zazálohovat aktuální stav databáze:
# vypsání aktuálního hesla do db cat /data/support/ispadmin/config/config.php |grep PASS
# online export databáze mysqldump -u ispadmin --password=heslo ispadmin --add-drop-table --quote-names > /root/zaloha_databaze.sql
# komprese zálohy gzip -9 /root/zaloha_databaze.sql
Pokud jsou k dispozici nepoškozené zálohy, tak je stačí nakopírovat do jakéhokoli adresáře a spustit příkaz ispadmin_recover. Tento script se dotáže
na umístění zálohy a na data, která si přejete obnovit. Pokud je záloha chráněna heslem, tak se script dotáže na heslo, které je nutné pro správné dešifrování.
Obnovení systémové zálohy je možné provádět použitím následujícího skriptu:
ispadmin_recover
Spuštění skriptu bez parametrů kdekoliv v adresářové struktuře vrátí tuto nápovědu:
ispadmin_recover [PATH] [MODE]
[PATH] Path to the ISPadmin's backup directory. Absolute or relative path can be used.
[MODE] Determine what part of a backup will be recovered: all - recover all files important parts of the ISPamin (auto mode for db, etc_conf, data) db - recover the MySQL database by MySQL import (only ispadmin db) db_bin - recover the MySQL database by MySQL binary files (all db in mysql structure) etc_conf - recover only config files in /etc (hostname, hosts, rc.local, httpd.conf) etc_full - recover all config files in /etc data - recover main ISPadmin data (/data) and all online graphs (RRD files)
First argument is required or second one is optional. If recover MODE is not given, full recover will be executed as default!
And finaly, a simple example of usage: ispadmin_recover /data/backup/2010_12_24__03_00 db
Obnovení volba all
Tento mód obnovy systémové zálohy je nejvíce užívaný. Takto jste schopni snadno a rychle obnovit systémovou zálohu ISPadmina.
V tomto módu se obnovují data z databáze, scripty, data jako online grafy atp. a systémové konfigurační soubory /etc/hosts, /etc/hostname, /etc/apache2/httpd.conf a /etc/rc.local.
Spuštění skriptu pouze s cestou k záloze vyvolá obnovu celé zálohy, jako by byl zadán parametr all.
Zápis
admin.ispadmin.cz:~# ispadmin_recover /data/backup/2011_03_23__12_03/
je ekvivalentní s
admin.ispadmin.cz:~# ispadmin_recover /data/backup/2011_03_23__12_03/ all
admin.ispadmin.cz:~# ispadmin_recover /data/backup/2011_03_23__12_03/
Recover script started.
Backup recover will destroy actual data on the server! Do backup before the recovery is a good idea. Are you sure want to do the recover of backup from '/data/backup/2011_03_23__12_03/'? [y/n]: y
Recover of mysql database running, please wait...
Recover of MySQL database by import file has been finished.
Recover only config files in /etc (hostname, hosts, rc.local, httpd.conf), please wait...
`/tmp/etc/hostname' -> `/etc/hostname' `/tmp/etc/hosts' -> `/etc/hosts' `/tmp/etc/rc.local' -> `/etc/rc.local' `/tmp/etc/apache2/httpd.conf' -> `/etc/apache2/httpd.conf'
Recover config files in /etc finished. Due to update config files the server restrart is needed!
Recover of /data running, please wait...
. . . zkrácený výpis . usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-23.bak usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-24.bak usr/local/script/ispadmin/restore_system.pl.save
Recover of directories /data & /usr/local/script/ispadmin has been finished.
[DONE] recover script finished.
Obnovení volba db
Tuto volbu použít pokud máte poškozenou nějakou tabulku v ISPadminovi a nelze ji opravit. Obnovuje jen data z databáze ISPadmina! Z ostatních databází, které můžete na Vašem serveru volitelně mít, data neobnoví.
admin.ispadmin.cz:~# ispadmin_recover /data/backup/2011_03_23__12_03/ db
Recover script started.
Backup recover will destroy actual data on the server! Do backup before the recovery is a good idea. Are you sure want to do the recover of db backup from '/data/backup/2011_03_23__12_03/'? [y/n]: y
Recover of mysql database running, please wait...
Recover of MySQL database by import file has been finished.
[DONE] recover script finished.
Většinou je po obnově databáze nutné spustit ještě příkaz
ispadmin_update
a to z toho důvodu, že třeba v databázi při updatu na novější verzi ISPadmina přibyl v některé tabulce nový sloupec atp.
Obnovení volba db_bin
Obnoví všechny binární data z MySQL (všechny databáze v mysql struktuře). Platí zde pravidlo, že obnova v tomto módu by se měla dělat jen mezi stejnými verzemi MySQL. Tzn. záloha databáze, která běžela na MySQL 5, se může bezproblému obnovit v systému používajícím tuto verzi. Pokud by ale nový server používal novější verzi, může vzniknout problém! Tato obnova se používá hlavně v případě, že nelze udělat klasickou obnovu databáze v módu db.
admin.ispadmin.cz:~# ispadmin_recover /data/backup/2011_03_23__12_03/ db_bin
Recover script started.
Backup recover will destroy actual data on the server! Do backup before the recovery is a good idea. Are you sure want to do the recover of db_bin backup from '/data/backup/2011_03_23__12_03/'? [y/n]: y
Recover of mysql binary files running, please wait... . . . zkrácený výpis . var/lib/mysql/ispadmin/billing_banka_email.MYD var/lib/mysql/ispadmin/billing_dobropisy.MYD var/lib/mysql/ispadmin/billing_banka_email_platby.MYD var/lib/mysql/ispadmin/billing_dobropisy_item.MYI var/lib/mysql/ispadmin/billing_dobropisy_item.MYD var/lib/mysql/ib_logfile0
Starting MySQL database server: mysqld. Checking for corrupt, not cleanly closed and upgrade needing tables..
Recover of binary structure of MySQL database has been finished.
[DONE] recover script finished.
Obnovení volba etc_conf
Tento mód obnovy obnoví ze zálohy pouze tyto konfigurační soubory /etc/hostname, /etc/hosts, /etc/rc.local a /etc/apache2/httpd.conf
admin.ispadmin.cz:~# ispadmin_recover /data/backup/2011_03_23__12_03/ etc_conf
Recover script started.
Backup recover will destroy actual data on the server! Do backup before the recovery is a good idea. Are you sure want to do the recover of etc_conf backup from '/data/backup/2011_03_23__12_03/'? [y/n]: y
Recover only config files in /etc (hostname, hosts, rc.local, httpd.conf), please wait...
`/tmp/etc/hostname' -> `/etc/hostname' `/tmp/etc/hosts' -> `/etc/hosts' `/tmp/etc/rc.local' -> `/etc/rc.local' `/tmp/etc/apache2/httpd.conf' -> `/etc/apache2/httpd.conf'
Recover config files in /etc finished. Due to update config files the server restart is needed!
[DONE] recover script finished.
Obnovení volba etc_full
Obnovu celého /etc dělat jen v případě, že jste si jistí, že systém(Linuxová distribuce), ze kterého je záloha, je stejné verze(stejná verze Debianu, stejná verze MySQL, PHP, Apache atd...) jako verze právě používaná. Pokud by to tak nebylo, mohlo by to způsobit vážné problémy a celý systém by bylo v krajním případě potřeba přeinstalovat.
!Proto tuto volbu spíše nedoporučujeme používat!
Tato volba slouží jen pro specifické případy obnovy.
admin.ispadmin.cz:~# ispadmin_recover /data/backup/2011_03_23__12_03/ etc_full
Recover script started.
Backup recover will destroy actual data on the server! Do backup before the recovery is a good idea. Are you sure want to do the recover of etc_full backup from '/data/backup/2011_03_23__12_03/'? [y/n]:: y
Recover all files in /etc directory running, please wait...
. zkrácený výpis . . etc/apache2/httpd.conf etc/apache2/conf.d/ etc/apache2/conf.d/charset etc/apache2/conf.d/security etc/apache2/conf.d/nagios3.conf etc/apache2/envvars etc/opt/ etc/lilo.conf etc/logrotate.d/ etc/logrotate.d/ppp etc/logrotate.d/firebird2
. . . zkrácený výpis . Recover of directory /etc has been finished. Due to update config files the server restarrt is needed!
[DONE] recover script finished.
Obnovení volba data
Tato volba neobnovuje data z databáze ISPadmina jak by se mohlo na první pohled zdát. Obnovuje scripty, online grafy a další informace z adresáře /data a /usr/local/script
admin.ispadmin.cz:~# ispadmin_recover /data/backup/2011_03_23__12_03/ data
Backup recover will destroy actual data on the server !! Do backup before the recovery is a good idea. Are you sure want to do the recover of data backup from '/data/backup/2011_03_23__12_03/'? [y/n]: y
Probiha obnova adresare /data , cekejte...
. . . zkrácený výpis
usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-16.bak usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-17.bak usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-18.bak usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-19.bak usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-20.bak usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-21.bak usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-22.bak usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-23.bak usr/local/script/ispadmin/restore_system.pl.2011-03-11_10-24.bak usr/local/script/ispadmin/restore_system.pl.save
Obnova adresare /data dokoncena.
[OK] Obnova zalohy dokoncena.
Ruční obnova databáze
Pokud máte starší verzi ISPadmina nebo Vám script ispadmin_recover z nějakého důvodu nevyhovuje, můžete udělat obnovu databáze ručně dle níže uvedeného návodu. Obnovit můžete buď čistě jen data ISPadmina nebo binární zálohu celé mysql.
A) mysql import (mysql online)
# přepnutí se do adresáře se zálohou cd /data/backup/2010_09_25__03_00
# odheslování zálohy unzip ispadmin.sql.gz.zip
# rozbalení zálohy databáze gunzip mysql/ispadmin.sql.gz
# vypsání aktuálního hesla do db cat /data/support/ispadmin/config/config.php |grep PASS |cut -f 3
# obnovení zálohované db do aktuálního systému mysql ispadmin -u ispadmin --password=db_heslo < mysql/ispadmin.sql
B) binary files (mysql offline)
# zastavení db /etc/init.d/mysql stop
# přepnutí se do adresáře se zálohou cd /data/backup/2010_09_25__03_00
# odheslování zálohy unzip ispadmin.sql.gz.zip
# smazání starých souboru rm -rf /var/lib/mysql/ispadmin/*
# rozbalení zálohy databáze tar xvfz mysql_bin.tgz -C /
# spuštění db /etc/init.d/mysql start
Zálohy konfigurací routerů
Menu: Ostatní / Zálohy / Routery Umístění: /data/support/ispadmin/mk_backup
Zálohy konfigurací routerů MikroTik či Flash Linux routerů. Zálohy MikroTiku se skládají z konfiguračních příkazů (příkaz export) a případně také z binární zálohy (příkaz backup). Zálohy Flash Linux routeru uchovávají nastavení síťových rozhraní, routovací tabulku a nastavení firewallu. Pravidelné zálohy routerů se provádí každý den ve 02:00 v noci.
Další informace o zálohách routeru naleznete v článku Ostatní / Zálohy / Routery.
Ruční záloha routeru
Automatické zálohy konfigurací routerů se provádí v nočních hodinách. Pokud budete potřebovat vytvořit zálohu konkrétního routeru okamžitě, můžete tak učinit prostřednictvím skriptu a identifikátoru routeru:
/usr/local/script/ispadmin/backup_conf.pl ID_ROUTERU
Možné problémy
V každém případě je vhodné aktivovat záznam propisovaných pravidel do logu. V menu Nastavení / Systémové nastavení / Mikrotik položka mikrotik_qt_debug. Uložené záznamy si poté můžete prohlédnout v souboru /var/log/ispadmin_*.log.
- Mikrotik ERR: Failed to save system configuration backup
- Mikrotik ERR command: /system backup save name="ispadmin"
- Pokud nastane problém, kdy se Vám binární zálohy neukládají, nejprve ověřte, že účet pod kterým systém ISPadmin spravuje konfiguraci routeru má povolen zápis na flashdisk routerbordu. Pokud ne, není samozřejmě možné vytvářet binární zálohy ani na routeru samotném. Záloha je vytvářena příkazem (mk shell): /system backup save name="ispadmin"
- Problem performing scp: Host key verification failed.
- scp timed out while trying to connect to ip_address
- V obou případech se ISPadmin nemůže korektně přihlásit na router pomocí SSH, ověřte tedy SSH přístup ručně.
- V případě, že ruční přihlášení na SSH routeru proběhne v pořádku a binární zálohy se i přesto neprovádí, problém je pravděpodobně se spojením přes SCP na některých verzích Debianu. Po reinstalaci openssh klienta se binární zálohy budou provádět korektně. Je proto potřeba provést reinstalaci openssh serveru příkazem:
apt-get remove openssh-client; apt-get install openssh-client openssh-server ssh
Obnovení zálohy routeru
A) Textová záloha
Konfigurace routeru MikroTik umožňuje zálohovat nastavení routeru v textové formě. Výsledná záloha je pak tedy čistý text, v němž se lze snadno orientovat a lze provádět úpravy hodnot. Obnova konfigurace routeru z textové zálohy pak probíhá tak, že celý text označíte přímo v okně prohlížeče a pomocí copy&paste jej vložíte do terminálu ve Winboxu, tím se vlastně znovu nastaví všechny zálohované položky.
B) Binární záloha
Také je zde možnost stáhnutí binární zálohy konfigurace, které jsou velice jednoduše použitelné pro obnovení systému. V případě uložení binární zálohy bude zobrazena ikonka
. Kliknutím na ikonu je možné tuto zálohu uložit na lokální disk. Zálohu pak můžete jednoduše nahrát do MikroTiku "přetažením" z lokálního disku přes okno Winboxu do záložky "Files". Vybráním zálohy ve Winboxu a kliknutím na tlačítko "restore" se pak obnoví kompletní konfigurace routeru.
Záloha NETflow dat
Menu: Ostatní / Zálohy / NETflow Umístění: /data/support/flow/default
Soubory modulu NETflow, uložení dat sbíraných hraničním routerem. Adresářovou strukturu nasbíraných dat je možné procházet přímo z rozhraní administrace. Můžete tak provádět občasné kontroly složek nebo sledovat objem souborů v průběhu času.
Dle umístění dat v adresářové struktuře souborového systému můžete provést ruční odzálohování na vzdálené uložiště (FTP, NFS, případně pomocí aplikace WinSCP na notebook).
Více informací o modulu NETflow naleznete v článku Modul NETflow.