Instalando dependências,
MySQL e
PostFix:
# apt-get update
# apt-get install gcc build-essential libssl-dev libmysql++-dev mysql-server postfix libreadline6-dev pkg-config libmysqld-dev libdbd-mysql-perl perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python
Pasta para backup:
# mkdir /mnt/backup
# chmod 777 /mnt/backup
Baixando Bacula:
# wget http://sourceforge.net/projects/bacula/files/bacula/7.4.4/bacula-7.4.4.tar.gz
# tar -zxvf bacula-7.4.4.tar.gz
Configurando antes de compilar:
# cp -v /usr/include/readline/* "PastaOndeDescompactado"/bacula-7.4.4/src/console/
# sed -i 's/MYSQL_LIBS =/MYSQL_LIBS = \/usr\/lib\/x86_64-linux-gnu\/libmysqlclient.a/g' "PastaOndeDescompactado"/bacula-7.4.4/src/cats/Makefile.in
Compilando Bacula:
# ./configure --with-readline=/usr/include/readline --disable-conio --bindir=/usr/bin --sbindir=/usr/sbin --with-scriptdir=/usr/libexec/bacula/ --with-working-dir=/var/spool/bacula/ --with-logdir=/var/log --enable-smartalloc --with-mysql --with-archivedir=/mnt/backup --with-job-email=email@dominio.com.br
# make
# make install
Iniciando o MySQL:
# /etc/init.d/mysql start
Criando usuário Bacula para banco de dados:
# mysql -u root -p
mysql>
CREATE USER 'bacula'@'localhost' IDENTIFIED BY 'SENHA';
mysql>
FLUSH PRIVILEGES;
mysql>
quit
Criando bando de dados do Bacula:
# cd /etc/bacula
# ./create_bacula_database -u root -p
# ./make_bacula_tables -u root -p
# ./grant_bacula_privileges -u root -p
Obs.: no "grant_b...", ele vai pedir para colocar a senha do usuário "bacula", é só repetir a mesma criada anteriormente.
Dando privilégio ao usuário Bacula ao banco de dados Bacula:
# mysql -u root -p
mysql>
GRANT ALL PRIVILEGES ON bacula.* TO 'bacula'@'localhost' IDENTIFIED BY 'SENHA';
mysql>
FLUSH PRIVILEGES;
mysql>
quit
Configurando o Bacula para usar o banco de dados:
# nano bacula-dir.conf
Procurar por:
Catalog {
Name = MyCatalog
# Uncomment the following line if you want the dbi driver
# dbdriver = "dbi:mysql"; dbaddress = 127.0.0.1; dbport =
dbname = "bacula"; dbuser = "bacula"; dbpassword = "SENHA"
}
Colocando o Bacula na inicialização do sistema:
# cp -av /etc/bacula/bacula /etc/init.d/bacula
# update-rc.d bacula defaults
# /etc/init.d/bacula start
Acessando o Bacula via terminal:
# bconsole
Instalando o Webmin (para gerenciar o Bacula):
# wget http://prdownloads.sourceforge.net/webadmin/webmin_1.820_all.deb
# dpkg --install webmin_1.820_all.deb
Editando arquivo Hosts (essa opção só deve ser usada, caso você não tenha um servidor DNS):
# nano /etc/hosts
XXX.XXX.XXX.XXX srvbacula
XXX.XXX.XXX.XXX win2012
Chave de regedit para Windows (só faz backup com essa informação):
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wbengine\SystemStateBackup]
"AllowSSBToAnyVolume"=dword:00000001
Gerar senha (caso seja necessário):
# apt-get install makepasswd
Ex.:
# makepasswd --chars=32
(32 representa o número de caracteres)
Configuração para gravar em fita LTO (essa configuração não é importante caso o backup seja feito em disco):
######## bacula-dir.conf ########
Storage {
Name = Autochanger
Address = srvbacula
SDPort = 9103
Password = "SENHA"
Device = Tape
Autochanger = yes
Media Type = LT0
}
######## bacula-sd.conf ########
# Dispositivo LTO-5 tape drive
#
Autochanger {
Name = Tape
Device = LTO-5
Changer Command = "/etc/bacula/mtx-changer %c %o %S %a %d"
Changer Device = /dev/sg2
}
Device {
Name = LTO-5
Media Type = LTO-5
Archive Device = /dev/st0
AutomaticMount = yes;
AlwaysOpen = yes;
RemovableMedia = yes;
RandomAccess = no;
AutoChanger = yes
Maximum File Size = 5GB
}
# Regras para FireWall ( Caso seja necessário)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9101 -j ACCEPT #(Porta do DIR)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9102 -j ACCEPT #(Porta do FD)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9103 -j ACCEPT #(Porta do SD)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10000 -j ACCEPT #(Porta do WEBMIN)
cp -av /etc/bacula/bacula /etc/init.d/bacula
cp: impossível obter estado de '/etc/bacula/bacula': Arquivo ou diretório não encontrado
Como faço para acessar a interface web (já consegui http://localhost:10000 porém não sei o user e senha default (amigo consegui também é o user e senha do UBuntu mesmo mais óbvio impossíve)) ?
Segue ainda as duas dúvidas.
Tem algum dica de como instalar os clientes windows para backpear os pcs windows ?
E teria alguma forma de fazer backup de servidores de bancos de dados mysql externos ?
Outra dúvida é quanto o backup a partir de servidores FTP externos, pois meu cenários é mais ou menos o seguinte.
Tenho um servidor DELL R540 na minha empresa com UBUNTU 16.04 SERVER e preciso fazer backup de bancos de dados mysql de clientes que estão hospedados em meu servidor cloud (fora da minha rede ), além disso neste cloud os clientes tem arquivos que precisam ser "backpeados", além de precisar fazer backups periódicos dos computadores de meus funcionários.
Parabéns pelo post, excelente.