terça-feira, 7 de outubro de 2008

Backup com rsync

Backup com rsync


Em tempos de espaço em disco muito barato, o backup diretamente no disco rígido de uma outra máquina deixou de ser uma alternativa inviável.

Para isto nada melhor do que o insubstituível rsync.

O script é bem simples:

sync.sh

  #!/bin/bash

cd /backup
rsync -avzlH -e ssh --exclude '/tmp/*' \
--exclude '/proc/*' \
--exclude '/sys/*' \
--exclude '/dev/*' \
--exclude '/backup/*' \
--delete \
www.dicas-l.com.br:/ .

Este script faz o backup de todo o conteúdo do servidor (dados, aplicativos e configurações), em um diretório local chamado /backup.

As opções utilizadas são:

-a archive, o comando rsync é instruido a preservar quase tudo, com exceção dos hard links
-H preservar os hard links. Se usarmos o pdumpfs para os backups, esta opção deve obrigatoriamente estar ativada, pois o comando pdumpfs trabalha por meio deste tipo de links
-e ssh usar o comando ssh para estabelecer a comunicação com o computador remoto
--delete apagar, do servidor que estiver recebendo os dados, as informações que não mais existirem no servidor remoto
--exclude não copiar arquivos cujo nome coincida com o especificado

Veja que alguns diretórios foram excluídos (/tmp, /proc, /sys, /dev, /backup) do backup. A opção --delete indica que arquivos que foram removidos do servidor original, devem ser também removidos da cópia local de backup.

É importante salientar que este script reflete a posição do dia do servidor remoto. Com este tipo de backup você não conseguirá recuperar a posição de um determinado dia. Uma ótima alternativa para se fazer backup em disco, mantendo a posição de diversos dias ou semanas, é o comando pdumpfs, descrito em uma dica anterior.

Nenhum comentário:

Os melhores podcasts do spotify