Dopo aver visto come usare rsnapshot per fare backup locali, vediamo come usarlo per fare backup su altri computer in rete. Dopo tutto, non è molto più difficile che fare backup locali...
Nella mia rete locale ho tre computer: castor, il mio desktop con Mandriva gnu/linux che viene usato spesso e che fa già i backup in locale su un hard disk secondario, pollux, un iMac G3 con su Mac Os X 10.3 che viene usato saltuariamente e linutop, il mio serverino di sviluppo LAMP Debian che è sempre acceso, privo di schermo.
Evidentemente linutop e pollux richiedono approcci di backup differenti.
Questo è il più facile: aggiungo queste righe a /etc/rsnapshot.conf su castor:
backup root@linutop:/etc/ linutop/
backup root@linutop:/var/ linutop/
backup root@linutop:/root/ linutop/
backup root@linutop:/home/ linutop/
backup_script /root/backup_script/backup_mysql.sh linutop/
backup_script /root/backup_script/backup_dpkg.sh linutop/
Le prime tre righe salvano il contenuto di /etc, /var e /home dal serverino
linutop su castor, le ultime due eseguono degli script. Il primo fa un dump
dei database di mysql, che essendo in esecuzione al momento della copia di /var/
probabilmente avrà restituito una copia inutilizzabile, il secondo salva la
lista dei pacchetti installati, in modo che sia possibile ripristinarli in
seguito.
Più in dettaglio, questo è il contenuto del primo script,
/root/backup_script/backup_mysql.sh, tratto dalla documentazione di rsnapshot:
#!/bin/bash
##############################################################################
# backup_mysql.sh
#
# by Nathan Rosenquist <nathan@rsnapshot.org>
# http://www.rsnapshot.org/
#
# This is a simple shell script to backup a MySQL database with rsnapshot.
#
# The assumption is that this will be invoked from rsnapshot. Also, since it
# will run unattended, the user that runs rsnapshot (probably root) should have
# a .my.cnf file in their home directory that contains the password for the
# MySQL root user. For example:
#
# /root/.my.cnf (chmod 0600)
# [client]
# user = root
# password = thepassword
# host = localhost
#
# This script simply needs to dump a file into the current working directory.
# rsnapshot handles everything else.
##############################################################################
# $Id: backup_mysql.sh,v 1.5 2005/04/03 13:52:02 scubaninja Exp $
# backup the database
ssh root@linutop -i ~/.ssh/rsnapshot_dsa /usr/bin/mysqldump --defaults-extra-file=/root/.my.cnf --all-databases > mysqldump_all_databases.sql
# make the backup readable only by root
/bin/chmod 600 mysqldump_all_databases.sql
Questo invece è il contenuto del secondo script,
/root/backup_script/backup_dpkg.sh:
#!/bin/bash
# salva una lista di pacchetti ripristinabile con la sequenza di comandi:
# apt-get update
# apt-get dist-upgrade
# dpkg --clear-selections
# dpkg --set-selections < dpkg-restore.txt
# apt-get -u dselect-upgade --purge
#
# in questo modo si possono ripristinare i pacchetti installati a partire
# da un'installazione minimale. Ripristinando /etc, /home e /var si ripristina
# anche la configurazione e i dati. Ricordarsi di controllare anche /boot/grub
ssh root@linutop -i ~/.ssh/rsnapshot_dsa /usr/bin/dpkg --get-selections > dpkg-restore.txt
exit 0
Nota: per accedere via ssh a linutop è necessario configurare l'accesso tramite chiave publbica. Vedi la parte "Accesso SSH con chiave pubblica".
Per un ripristino completo, posso fare un'installazione minimale o ripristinare un vecchio dump del file system, reinstallare i pacchetti mancanti (installati dopo il dump più recente) con i comandi:
aptitude update
aptitude dist-upgrade
dpkg --clear-selections
dpkg --set-selections < dpkg-restore.txt
apt-get -u dselect-upgrade --purge
Poi ricopiare a posto /etc, /home, /root e /var, e poi ripristinare i database con il comando:
mysql < mysqldump_all_databases.sql
Poiché è un piccolo server, si assume che ogni operazione di riprstino venga fatta da root, che può montare/smontare liberamente dischi e condivisioni di rete senza problemi. Per questo non ho previsto alcun modo esplicito per accedere ai backup da linutop (se necessario root fa un mount tramite sshfs).
Su pollux mi interessa solo avere backup della directory utenti /Users.
Poiché pollux è un sistema desktop piuttosto lento, e non è acceso frequentemente, non posso contare su backup settimanali fatti da castor, su cui gira rsnapshot, ne salterebbero troppi, visto che non ho la certezza che pollux sia acceso mentre anacron su castor avvia il backup.
Per questo i backup devono partire da pollux verso castor, visto che è molto probabile che quest'ultimo sia comunque acceso. Vengono sincronizzati i dati di pollux con una directory di castor, e poi da questa vengono fatti gli snapshot periodici. Dunque per pollux, weekly.0 nella dir degli snapshot risalirà a un tempo compreso tra una settimana e dieci giorni fa. Per ora è il meglio che sono riuscito a fare.
Uso allora rsync per fare backup completi di /Users su castor in /mnt/backup/imac-pool con questo script:
script rsync
Lanciato tramite anacron su pollux ogni 3 giorni, così che le modifiche da trasferire siano poche e il backup molto rapido:
configurazione anacron su pollux
Su castor, invece, aggiungo questa riga a /etc/rsnapshot.conf:
backup /mnt/backup/imac-pool/Users pollux/
E configuro samba su castor in modo da condividere in rete la directory
/mnt/timemachine, così che gli utenti di pollux (che sono gli stessi utenti di
castor) possano recuperare i propri file dai backup. Per questa configurazione
ho usato il comodo draksambashare nel Centro di Controllo di Mandriva
(naturalmente dopo la configurazione ho controllato il risultato in
/etc/samba/).
Accedo a questa condivisione samba da pollux in questo modo:
procedura per accedere a samba da pollux
Easy Automated Snapshot-Style Backups with Linux and Rsync
commenti
re
The mastery of link building packages of company to buy link is acceptable for business owners. Furthermore, that is very important for websites.
Whats up, This is a
Whats up, This is a wonderful summation, I located your blog checking google for any similar subject and observed this. I couldnt find as well significantly other tips and information about 000-978 dumps , JN0-101 dumps , 642-374 dumps , 350-018 dumps , 70-652 dumps , EX0-101 dumps , 640-863 dumps , 70-516 dumps , 70-290 dumps , 646-671 dumps on this posting, so it was fantastic to discover this one. I will almost certainly be returning to think about a number of other articles which you have written another time.
re
Present college students don't have difficulties with essays writing, because they buy online essays and are able to focus on their personal affairs.
answer
Very keen item. With subject being so decisive online, this is a terrific outline for creating new on that people will use for buy thesis.
skechers sneaker sketcher
skechers sneaker
sketcher boots
black skechers
skechers black
sketcher shape up
skechers store
kids skechers
skechers kids
skechers for kids
skechers sale
skechers on sale
sale skechers
girls skechers
skechers girls
skechers for girls
skechers boot
skechers biker
Invia nuovo commento