Páginas

terça-feira, 2 de agosto de 2011

Programar backup com rsync no Linux

Neste post você aprenderá como programar um backup com o rsync no Linux.


O que é o rsync ?


De acordo com a pagina "man", "Rsync é uma ferramenta de cópia rápida e extraordinariamente versátilEle pode copiar localmente, para / de outro host sobre qualquer shell remoto, ou para / de um daemon rsync remoto. Ele oferece um grande número de opções que controlam todos os aspectos do seu comportamento e permiti uma especificação muito flexível dos arquivos a serem copiados. É famosa por seu algoritmo delta transferência, o que reduz a quantidade de dados enviados através da rede, enviando apenas as diferenças entre os arquivos de origem e os arquivos existentes no destino. Rsync é amplamente utilizado para backups e espelhamento e como um comando de cópia melhorada para uso diário."


Instalando o rsync


Todos os comandos aqui apresentados estão baseados na distribuição Debian.

O primeiro passo é instalar o rsync. Supondo que você seja usuário root digite:


Agora crie um arquivo, script, para adicionar as regras das quais achar conveniente.
Neste exemplo foram usados as seguintes regras:





Explicando o arquivo...


Aviso ao interpretador de comandos que deve ser utilizado o bash.

Armazena o momento de início na variável INICIO, no formato dd/mm/yyyy-hh:mm:ss.

 
Armazena na variável LOG qual o arquivo que deve ser gravado um registro do backup, no formato yyyy-mm-dd_nome-do-arquivo.txt.


Mantendo esse arquivo, pode ser muito útil para que possa verificar se os backups têm sido realizados corretamente. Cria o início do registro de log no arquivo, gravando um cabeçalho no qual insere a data e hora do início do backup.


Essa é a linha que realiza o backup de fato. Ela invoca o comando rsync e fornece os parâmetros de quais arquivos copiar e para qual destino. A cada arquivo copiado, uma linha será inserida no arquivo de log. Dessa forma, o administrador pode saber quais arquivos foram copiados no backup de determinado dia.

Armazena o momento de término do backup na variável FINAL, no formato

Finaliza o arquivo de backup com um rodapé no qual insere a data e hora do término do backup.


Observações: Caso deseje alterar os parâmetros do rsync para a cópia, consulte o manual do rsync com o comando man rsync. Sugiro criar uma pasta em /var/log com o nome rsync e gravar todos os logs do rsync nessa pasta.


Utilizando o Cron para realizar o backup


O cron é um serviço do Linux que é carregado durante o processo de boot do sistema. Ele funciona como um agendador de tarefas e permite agendar a execução de comandos e processos de maneira repetitiva ou para uma data específica.

Acesse o crontab com o comando:


Adicione a seguinte linha:


Isto significa que o comando "/local-do-script" irá rodar todo dia as 22h. 

Nenhum comentário:

Postar um comentário