Backup automatici · 2 min read · Feb 08, 2026
Backup automatici con rdiff-backup - Pagina 2
Passo 3: Modifica la chiave pubblica su server1.example.com
Accedi come root su server1.example.com e dai un’occhiata a /root/.ssh/authorized_keys. Dovrebbe apparire simile a questo:
| ssh-rsa AAAAB3Nza[...]W1go9M= rdiff-backup@backup |
Ora aggiungi la seguente stringa all’inizio di /root/.ssh/authorized_keys:
command=”rdiff-backup –server –restrict-read-only /“,from=”backup.example.com”,no-port-forwarding,no-X11-forwarding,no-pty
Deve essere su una sola riga(!) con la chiave, separata solo da uno spazio:
| 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 |
Questo eseguirà il comando rdiff-backup –server –restrict-read-only /* quando l’utente rdiff-backup di backup.example.com si connette a server1.example.com tramite SSH. –restrict-read-only / assicura che rdiff-backup abbia solo accesso in lettura su server1.example.com. Dipende dalla tua versione di rdiff-backup se questo funziona. Se non funziona per te, puoi omettere –restrict-read-only /* in modo che legga
command=”rdiff-backup –server”,from=”backup.example.com”,no-port-forwarding,no-X11-forwarding,no-pty
In from=”backup.example.com” dovresti usare il nome host che un lookup inverso dell’indirizzo IP di backup.example.com restituisce. Ad esempio, se l’indirizzo IP di backup.example.com è 1.2.3.4, e **
dig -x 1.2.3.4
restituisce
| rdiff-backup@backup:~$ dig -x 1.2.3.4 ; <> DiG 9.2.4 <> -x 1.2.3.4 ;; opzioni globali: printcmd ;; Risposta ricevuta: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38020 ;; flags: qr rd ra; QUERY: 1, RISPOSTA: 1, AUTORITÀ: 0, AGGIUNTIVO: 0 ;; SEZIONE DOMANDA: ;4.3.2.1.in-addr.arpa. IN PTR ;; SEZIONE RISPOSTA: 4.3.2.1.in-addr.arpa. 43200 IN PTR server3245.somehoster.com. ;; Tempo di query: 118 msec ;; SERVER: 145.253.2.75#53(145.253.2.75) ;; QUANDO: Gio Ott 13 14:56:03 2005 ;; DIMENSIONE MSG ricevuta: 83 rdiff-backup@backup:~$ |
allora dovresti usare server3245.somehoster.com:
command=”rdiff-backup –server –restrict-read-only /“,from=”server3245.somehoster.com”,no-port-forwarding,no-X11-forwarding,no-pty
Puoi anche usare l’indirizzo IP di backup.example.com:
command=”rdiff-backup –server –restrict-read-only /“,from=”1.2.3.4”,no-port-forwarding,no-X11-forwarding,no-pty
Successivamente esegui
chmod -R go-rwx /root/.ssh
Poi dai un’occhiata a /etc/ssh/sshd_config. Dovrebbe contenere le righe
| RSAAuthentication yes PubkeyAuthentication yes |
Riavvia ssh se hai dovuto modificare /etc/ssh/sshd_config:
/etc/init.d/ssh restart
Passo 4: Testa rdiff-backup su backup.example.com
Tornato su backup.example.com, di nuovo come utente rdiff-backup, testiamo il backup:
cd /backup
rdiff-backup server1_backup::/boot boot
Nel secondo comando vedi la stringa server1_backup. Quella è la stringa che abbiamo usato in /backup/.ssh/config dopo host. Con questo secondo comando, l’utente rdiff-backup si connetterà a server1.example.com come utente root e salverà la directory /boot di server1.example.com nella directory /backup/boot su backup.example.com. Se vedi che funziona e non devi digitare una password, allora - congratulazioni! Ce l’hai fatta!
Ora tutto ciò che resta da fare è creare un cron job. Ancora come utente rdiff-backup, esegui
crontab -e
e crea un cron job come questo:
40 2 /usr/bin/rdiff-backup –exclude /tmp –exclude /mnt –exclude /proc –exclude /dev –exclude /cdrom –exclude /floppy server1_backup::/ /backup/server1*
Questo esegue il backup ogni notte alle 2.40h, salvando la directory / con tutte le sottodirectory (escludendo /tmp, /mnt, /proc, /dev, /cdrom, /floppy) di server1.example.com in /backup/server1 su backup.example.com.
(Nota (un po’ off-topic): su Debian Sarge crontab -e aprirà automaticamente l’editor nano. Se sei abituato a lavorare con l’editor vi (come me), esegui i seguenti comandi:
rm -f /etc/alternatives/editor
ln -s /usr/bin/vi /etc/alternatives/editor
Dopo, esegui crontab -e, e vi si aprirà.)
Per scoprire ulteriori comandi rdiff-backup (soprattutto come ripristinare un backup), esegui
man rdiff-backup e dai un’occhiata a http://www.nongnu.org/rdiff-backup/examples.html.
Link
Homepage di rdiff-backup: http://www.nongnu.org/rdiff-backup/index.html
Esempi di rdiff-backup: http://www.nongnu.org/rdiff-backup/examples.html
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.