Como fazer backup do Ubuntu Server 20.04 com o Bacula
O Bacula é uma poderosa ferramenta de backup. Ele é altamente dimensionável, funciona em rede, permite verificar e criptografar dados e tem muitas outras vantagens.
Neste tutorial, examinaremos as etapas para configurar um backup de arquivo em um computador local.
Primeiro, vamos dar uma olhada nos componentes do Bacula:
- Bacula Director gerencia as tarefas de backup e restauração e coordena a verificação de arquivos;
- O Bacula Console permite que você gerencie o componente Director, execute trabalhos, visualize estatísticas e assim por diante;
- Bacula File funciona em todos os sistemas que precisam de backup, interage com o Director e envia arquivos a seu pedido;
- Bacula Storage gerencia os armazenamentos físicos e grava os backups neles;
- Bacula Catalog é um banco de dados de serviço para organizar o backup, a recuperação e a verificação de arquivos. Graças ao catálogo, o utilitário tem informações retrospectivas sobre todos os arquivos e dispositivos de armazenamento.
Passo 1 - Instalação do Bacula e do banco de dados
O Bacula usa o servidor Postfix para enviar notificações por e-mail quando uma tarefa é concluída. Você precisa instalá-lo e configurá-lo se quiser receber e-mails. O processo de configuração é descrito aqui: Como instalar e configurar o Postfix como um servidor SMTP somente de envio
Vamos instalar o Bacula
apt install bacula
Digite os dados de configuração do Postfix quando solicitado ou selecione "sem conexão" se não precisar de e-mails.
Na próxima etapa, selecione "Yes" para configurar o servidor de banco de dados PostgreSQL e "localhost" para seu nome de host. Você pode deixar o campo de senha vazio.

Etapa 2 - Configuração do Bacula
Primeiro, configure um dispositivo de armazenamento de backup. Crie uma pasta para registrar os backups e torne o bacula seu proprietário.
mkdir /opt/backup
chown bacula:bacula /opt/backup
Adicione a seguinte configuração ao arquivo /etc/bacula/bacula-sd.conf:
Device {
Name = LocalSD
Media Type = File
Archive Device = /opt/backup
LabelMedia = yes; # lets Bacula label unlabeled media
Random Access = Yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
Maximum Concurrent Jobs = 5
}
Para aplicar as alterações, reinicie o serviço.
sudo systemctl restart bacula-sd.service
Agora você precisa adicionar informações de armazenamento ao arquivo /etc/bacula/bacula-dir.conf. Observe que a senha deve corresponder à string de senha no bacula-sd.conf
Storage {
Name = LocalSD # Must be equal to the "Name" parameter of the "Storage" section in the /etc/bacula/bacula-sd.conf file
Address = 127.0.0.1
Password = "Password"
Device = LocalSD
Media Type = File
}
Além disso, adicione informações sobre o novo FileSet que especifica os diretórios para backup.
FileSet {
Name = "LocalFS"
Include {
Options {
signature = MD5
}
File = /home
}
}
Neste exemplo, a pasta /home é selecionada para backup. Você também pode adicionar outras metas da mesma forma. Lembre-se de que não deve ser feito o backup da pasta onde os backups estão localizados.
Além disso, adicione um Schedule:
Schedule {
Name = "LocalDaily"
Run = Full daily at 03:00
}
A última é a configuração do trabalho:
Job {
Name = "LocalBackup"
JobDefs = "DefaultJob"
Enabled = yes
Level = Full
FileSet = "LocalFS"
Schedule = "LocalDaily"
Storage = LocalSD
Write Bootstrap = "/var/lib/bacula/LocalhostBackup.bsr"
}
Salve o arquivo e feche-o. Reinicie o serviço.
systemctl restart bacula-dir
O Bacula agora executará um backup completo das pastas especificadas diariamente às 03:00. Se quiser fazer isso imediatamente, faça login no bconsole, digite "run", selecione "LocalBackup" e confirme. Para verificar o status do trabalho, digite "status" e selecione "1".
Para restaurar arquivos, use o comando "restore" no console b e siga as instruções.


