Saiba como realizar um backup incremental no Linux usando a ferramenta Duplicity

Manter dados críticos salvos em servidores é uma grande responsabilidade para os profissionais que precisam ter soluções para uma situação inesperada, como por exemplo: a perda desses dados. Diante disso, além de conhecer as técnicas de backups (incremental, diferencial e total), é preciso utilizar ferramentas que provenham segurança e integridade na realização do backup. Sendo assim, o Duplicity é uma ferramenta que oferece o método de backup incremental encriptando os dados a serem armazenados. Ele usa algoritmos da ferramenta rsync no método de sincronismos de dados, como o librsync; e o GnuPG para encriptar os dados. Nesse tutorial, será descrito como realizar um backup incremental no Linux usando a ferramenta Duplicity.

CONTEXTUALIZAÇÃO

 

A diferença basicamente entre os três tipos de backups (incremental, diferencial e total) é a seguinte:

  • TOTAL – Backup full, todos os arquivos são copiados. Sempre o primeiro backup é desse tipo. Posteriormente ao backup TOTAL é utilizado o Diferencial ou Incremental.
  • DIFERENCIAL – É executado após o último backup FULL, ele realiza backup apenas dos arquivos alterados, em sua primeira execução. Posteriormente, ele irá realizar o backup dos arquivos que foram alterados após o último backup FULL mais os arquivos que foram alterados depois do último backup Diferencial.
  • INCREMENTAL – Realiza backup somente dos arquivos novos ou modificados desde a última execução do backup.

 

 

INSTALAÇÃO

 

Para instalar o Duplicty no Debian e seus derivados (Ubuntu ou Mint):

$ sudo apt-get install duplicity python-paramiko

 

Para instalar no FEDORA:

$ sudo yum install duplicity python-paramiko

 

UTILIZANDO A FERRAMENTA

 

Para criar um método seguro e incremental para seu backup de um diretório local e transferir para um servidor remoto, é preciso destacar que o servidor remoto precisará tem instalado o serviço SSH, pois será utilizada a ferramenta SCP para transferir os dados. Como opção ao SSH, o servidor também poderá ter rodando um FTP 😉

Para realizar essa operação, é necessário executar o comando abaixo:

$ PASSPHRASE=sua-senha-SSH-servidor duplicity /home/ricardo/Downloads scp://user@servidor-remoto//home/user/backup/

 

Onde,

  • sua-senha-SSH-servidor – representa a senha do usuário do servidor SSH remoto
  • scp://user@servidor-remoto – representa o comando scp informando o usuário (user) e endereço IP do servidor remoto
  • /home/user/backup/ – representa o diretório onde serão salvos os dados de backup no servidor remoto

 

Uma solução viável, seria criar um script para execução desse procedimento.

 

 

Quando você cria o primeiro backup remoto, a ferramenta Duplicity garantirá a criação do primeiro backup completo e solicitará uma senha para a chave criptográfica GnuPG (em destaque na amostra acima). Posteriormente, dado o primeiro backup completo criado, o Duplicty criará backups incrementais e solicitará a senha criada na chave GnuPG.

VERIFICANDO A INTEGRIDADE DOS DADOS SALVOS NO BACKUP

 

Se fez backup, é preciso verificá-lo. Independentemente da ferramenta que usou, é importante verificar a integridade dos dados. O comando a ser executado deve ser:

$ duplicity verify scp://user@servidor-remoto//home/user/backup/ ~/Downloads

 

 

Importante: Quando é usado o parâmetro “verify”, é preciso inverter a ordem – primeiro é informado o local remoto de onde foi feito o backup e depois o local de origem dos arquivos

RECUPERANDO DADOS DO BACKUP

 

Quando for preciso recuperar os arquivos do backup, é necessário executar o comando:

$ duplicity scp://user@servidor-remoto//home/user/backup/ /home/ricardo//Downloads_recuperado

 

Onde, é preciso informar o local de recuperação dos arquivos (/home/ricardo//Downloads_recuperado) – deve ser diferente do local de origem de envio dos arquivos (/home/ricardo//Downloads)

BÔNUS – BACKUP VIA FTP

 

Além do SSH, o Duplicity suporta o FTP. O formato do comando é:

$ FTP_PASSWORD=mypass duplicity ~Downloads ftp://username@ftp_server.com/backup_directory
Ricardo Ferreira

Ricardo Ferreira

Fundador do Linux Descomplicado - LD.

Sempre em busca de novos conhecimentos, preza por conteúdo de qualidade e auto-explicativo. Por isso, persiste em criar um site com artigos relevantes para todos os leitores do Linux Descomplicado!
Ricardo Ferreira

Comentários

comentários

Curso Docker - Introdução a administração de containers

Docker é uma plataforma para desenvolvimento, provisionamento e execução de aplicações usando tecnologia de containers.

Se você é um desenvolvedor ou sysadmin você poderá ter diversas vantagens usando a plataforma Docker:
  • Desenvolve uma vez...executa em qualquer lugar;
  • Sem preocupações (dependências e/ou pacotes)... foco no desenvolvimento;
  • Elimina inconsistências na entrega das aplicações e/ou serviços;;
  • Evita o “localhost funciona”;
  • Promove uma infraestrutura escalável;

Este curso é introdutório a plataforma Docker e lhe dará melhor compreensão sobre as vantagens da ferramenta.


Inscreva-se agora »

VOCÊ TAMBÉM PODERÁ LER...

  • Edilson

    Simples de entender, mas nem por isso perde em qualidade, ótimo. Obrigado por compartilhar.