Backup con Bacula
Da Wizard linux team wiki.
←Older revision | Newer revision→
Prendiamo il necessario
- installare alcuni pacchetti richiesti dal file sorgente di bacula:
apt-get install mysql-server gcc libmysqlclient15-dev g++ make libncurses5-dev libssl-dev
- scaricare il file sorgente di bacula reperibile su sourceforge
- scompattare il file
- andare nella directory e compilare bacula con il supporto per mysql
# cd bacula-x.x.x # ./configure --with-mysql # make # make install
Modifiche al sistema
- Bisogna assicurarsi che la prima riga del file hosts sia quella relativa al pc e non 127.0.0.1.
- Sistemiamo i servizi per fare in modo che si attivino al boot
cp /etc/bacula/bacula-ctl-fd /etc/init.d/bacula-fd cp /etc/bacula/bacula-ctl-dir /etc/init.d/bacula-director cp /etc/bacula/bacula-ctl-sd /etc/init.d/bacula-sd chmod 755 /etc/init.d/bacula-sd chmod 755 /etc/init.d/bacula-fd chmod 755 /etc/init.d/bacula-director update-rc.d bacula-sd defaults 90 update-rc.d bacula-fd defaults 91 update-rc.d bacula-director defaults 92
- facciamo partire i servizi
/etc/init.d/bacula-sd start /etc/init.d/bacula-fd start /etc/init.d/bacula-director start
Configuriamo la parte data base di bacula
NB: Questi script funzionano così come sono solo se la password di mysql è vuota
- cd etc/bacula
- ./create_mysql_database
- ./make_mysql_tables
- ./grant_mysql_privileges
Installiamo Bacula-web (procedura per CentOS 5)
I pacchetti da installare
yum -y install sudo make gcc php-pear.noarch php-pear-DB.noarch php-gd.i386 php-gd.i386 php-pear.noarch php-pear-DB.noarch php-mysql.i386 php-pear-MDB2.noarch php-pear-MDB2-Driver-mysql.noarch
Modifiche al php.ini
Inserire nella sezione extension:
extension=mysql.so extension=gd.so
Tips & Tricks
Messaggio d'errore:JobId 0: Fatal error: Version error for database "bacula". Wanted x, got y
Bacula dice che la versione di DB voluta dalla release installata è diversa da quella che ha realmente. Basta andare sotto la directory <path_appoggio_sorgenti>/bacula-x.x.x/updatedb e lanciare lo script mysql che ci interessa. Ad esempio per un errore del tipo Fatal error: Version error for database "bacula". Wanted 11, got 10 lo script da lanciare è update_mysql_tables_10_to_11.
Manutenzione del DB di bacula
- cercare se ci sono problemi sul db: dbcheck -C MyCatalog -c /etc/bacula/bacula-dir.conf bacula bacula
- fare il fix dei problemi: dbcheck -f -C MyCatalog -c /etc/bacula/bacula-dir.conf bacula bacula
Fatal error: bsock.c:135 Unable to connect to Storage daemon on srvbck:9103. ERR=Connessione rifiutata
Il test da fare è telnet <nome_server> 9103. Se il messaggio di errore è sempre lo stesso bisogna modificare nel file bacula-sd.conf la seguente riga:
SDAddress = 127.0.0.1
con (adattando i propri parametri):
SDAddress = <nome_o_ip_del_server>
Error: bsock.c:182 gethostbyname() for host "srvbck" failed ...
Questo succede quando il nome del server non riesce ad essere risolto in maniera corretta. Per ovviare a ciò bisogna quardare 2 cose:
- se sul server che fa da dns è presente il server che si occupa di fare il backup
- se nei file di configurazione di bacula il nome corrisponde ad un FQN (fully qualificated name)
Links
- sito ufficiale: http://www.bacula.org/
- sito di riferimento del tutorial: http://wiki.bacula.org/doku.php?id=howto_compile_and_install_bacula_on_debian_4.0_etch
- sito della webgui: http://twproject.wik.is/Linux_Zone/Bacula/Web_Gui

