L'anticamera del cestino

Raccolta differenziata di esperienze di dubbia utilità

Backup con rsync su un disco esterno USB

leave a comment »

Riporto di seguito uno script che utilizzo per fare il backup su un disco esterno USB. Lo script oltre ad effettuare il backup incrementale con rsync verifica che il disco USB sia montato e scrive in /var/log/messages le attività effettuate.
#!/bin/bash
SORGENTE="/home/max" # Cosa copiare
TARGET="/media/backup" # Dove copiare
EXCLUDE="/home/max/.rsync/exclude" # Lista file da escludere
TAG="backup" # tag dei log scritti in /var/log/messages


# VERIFICA CHE IL DISCO E' MONTATO
MOUNTED=$(df | grep $TARGET |awk '{print $6}')
if [ "$MOUNTED" == "$TARGET" ]
then
echo "Il disco è montato: eseguo il backup"
logger Inizio backup di $SORGENTE per `hostname` -t $TAG
rsync -av --exclude-from=$EXCLUDE $SORGENTE $TARGET/
RSYNCERR=$?
logger Fine backup per `hostname` rsync ha restituito $RSYNCERR -t $TAG
exit 0
else
echo "Il disco non è montato"
logger Impossibile eseguire il backup di `hostname` disco non montato -t $TAG
exit 1
fi

Dopo che ho fatto questo script ho deciso di creare il pacchetto deb per poterlo installare agevolmente sui miei PC. A quel punto ho pensato di renderlo un po’ più completo e di aggiungere nel pacchetto diversi tools per effettuare il backup su supporti e protocolli diversi (ssh, samba, ecc). Ho caricato il progetto su GitHub

Written by Max-B

25 ottobre 2011 a 10:53

Pubblicato su bash, GNU/Linux

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: