Backup Automatizado · 2 min read · Feb 08, 2026

Backups Automatizados Com rdiff-backup - Página 2

Passo 3: Edite a Chave Pública Em server1.example.com

Faça login como root em server1.example.com e dê uma olhada em /root/.ssh/authorized_keys. Deve parecer semelhante a isto:

| ssh-rsa AAAAB3Nza[...]W1go9M= rdiff-backup@backup |

Agora adicione a seguinte string ao início de /root/.ssh/authorized_keys:

command=”rdiff-backup –server –restrict-read-only /“,from=”backup.example.com”,no-port-forwarding,no-X11-forwarding,no-pty

Deve estar em uma linha(!) com a chave, apenas separada por um espaço:

| command="rdiff-backup --server --restrict-read-only /",from="backup.example.com",no-port-forwarding,no-X11-forwarding,no-pty ssh-rsa AAAAB3Nza[...]W1go9M= rdiff-backup@backup |

Isso executará o comando rdiff-backup –server –restrict-read-only /* quando o usuário rdiff-backup de backup.example.com se conectar a server1.example.com via SSH. –restrict-read-only / garante que rdiff-backup tenha apenas acesso de leitura em server1.example.com. Depende da sua versão do rdiff-backup se isso funciona. Se isso não funcionar para você, você pode deixar de fora –restrict-read-only /*, de modo que fique:

command=”rdiff-backup –server”,from=”backup.example.com”,no-port-forwarding,no-X11-forwarding,no-pty

Em from=”backup.example.com” você deve usar o nome do host que uma pesquisa reversa do endereço IP de backup.example.com retorna. Por exemplo, se o endereço IP de backup.example.com for 1.2.3.4, e **

dig -x 1.2.3.4

retorna

| rdiff-backup@backup:~$ dig -x 1.2.3.4 ; <> DiG 9.2.4 <> -x 1.2.3.4 ;; opções globais: printcmd ;; Resposta recebida: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38020 ;; flags: qr rd ra; QUERY: 1, RESPOSTA: 1, AUTORIDADE: 0, ADICIONAL: 0 ;; SEÇÃO DE PERGUNTAS: ;4.3.2.1.in-addr.arpa. IN PTR ;; SEÇÃO DE RESPOSTA: 4.3.2.1.in-addr.arpa. 43200 IN PTR server3245.somehoster.com. ;; Tempo da consulta: 118 msec ;; SERVIDOR: 145.253.2.75#53(145.253.2.75) ;; QUANDO: Qui Out 13 14:56:03 2005 ;; TAMANHO MSG recebido: 83 rdiff-backup@backup:~$ |

então você deve usar server3245.somehoster.com:

command=”rdiff-backup –server –restrict-read-only /“,from=”server3245.somehoster.com”,no-port-forwarding,no-X11-forwarding,no-pty

Você também pode usar o endereço IP de backup.example.com:

command=”rdiff-backup –server –restrict-read-only /“,from=”1.2.3.4”,no-port-forwarding,no-X11-forwarding,no-pty

Em seguida, execute

chmod -R go-rwx /root/.ssh

Então, dê uma olhada em /etc/ssh/sshd_config. Deve conter as linhas

| RSAAuthentication yes PubkeyAuthentication yes |

Reinicie o ssh se você teve que mudar /etc/ssh/sshd_config:

/etc/init.d/ssh restart

Passo 4: Teste o rdiff-backup Em backup.example.com

De volta a backup.example.com, novamente como o usuário rdiff-backup, testamos o backup:

cd /backup
rdiff-backup server1_backup::/boot boot

No segundo comando, você vê a string server1_backup. Essa é a string que usamos em /backup/.ssh/config após host. Com este segundo comando, o usuário rdiff-backup se conectará a server1.example.com como o usuário root e salvará o diretório /boot de server1.example.com no diretório /backup/boot em backup.example.com. Se você ver que está funcionando e não precisa digitar uma senha, então - parabéns! Você conseguiu!

Agora, tudo o que resta a fazer é criar um trabalho cron. Ainda como o usuário rdiff-backup, execute

crontab -e

e crie um trabalho cron assim:

40 2 /usr/bin/rdiff-backup –exclude /tmp –exclude /mnt –exclude /proc –exclude /dev –exclude /cdrom –exclude /floppy server1_backup::/ /backup/server1*

Isso executa o backup todas as noites às 2:40h, salvando o diretório / com todos os subdiretórios (excluindo /tmp, /mnt, /proc, /dev, /cdrom, /floppy) de server1.example.com em /backup/server1 em backup.example.com.

(Nota (um pouco fora do tópico): no Debian Sarge crontab -e abrirá automaticamente o editor nano. Se você está acostumado a trabalhar com o editor vi (como eu), execute os seguintes comandos:

rm -f /etc/alternatives/editor
ln -s /usr/bin/vi /etc/alternatives/editor

Depois, execute crontab -e, e vi será aberto.)

Para descobrir mais comandos do rdiff-backup (especialmente como restaurar um backup), execute

man rdiff-backup e dê uma olhada em http://www.nongnu.org/rdiff-backup/examples.html.

Links

Página inicial do rdiff-backup: http://www.nongnu.org/rdiff-backup/index.html

Exemplos do rdiff-backup: http://www.nongnu.org/rdiff-backup/examples.html

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.