Newsgroup: it.comp.os.linux.iniziare
Titolo: Script di backup su pc remoto

Una domanda un po' particolare: vorrei fare uno script di backup di tutti i
file del server su un pc remoto, pensavo di seguire questa procedura:
- monto la condivisione remota (e qui c'è già un piccolo problema, se
l'operazione non va a buon fine come faccio a far bloccare lo script?)
- copio (e qui sta il problema più grosso) comprimendo i file nella cartella
della condivisione (per es. /mnt/backup)
- smonto la cartella condivisa
Il tutto lo vorrei fare con il server in funzione e comprensivo di tutte le
directory tranne /mnt.
Secondo voi dovrei escludere qualche altra directory?
Per il backup persavo a tar, però non saprei come scrivere la sintassi
esatta per fare il backup di tutto tranne la dir /mnt, fargli comprimere i
file e conservare gli attributi, i permessi e i percorsi dei vari file.
Ho letto il man però se c'è qualcuno che conosce bene il comando tar e mi
dice che opzioni userebbe per fare quello che ho scritto mi farebbe una
grossa cortesia... il problema è che questa è un operazione abbastanza
delicata e non vorrei che un mio errore mi costasse caro in futuro quando e
se mi servirà recuperare i dati.
Secondo voi è fattibile?
Grazie
Fabio

 Secondo voi dovrei escludere qualche altra directory?
Ragiona al contrario: metti i dati tuoi sempre e solo in /home (dir. utenti,
documentazione originale, sito web, sito ftp, ecc.) e fai il backup solo
delle dir. veramente necessarie (/etc, /home e poco altro).
Comincia col backup di piccole cose, e controlla che funzioni tutto.
Per colmo di scrupolo, finito il backup io faccio l'unmount, il mount,
e vado a rileggere il tutto per assicurarmi che ci sia veramente.
Ciao,
// Umberto Salsi
//
// 
http://digilander.iol.it/salsi
  --  GnuPG Key ID = BE2C F6CD 77E9 29AE

 e vado a rileggere il tutto per assicurarmi che ci sia veramente.
Bella idea, ti ringrazio molto per i consigli. Ti posso chiedere
un'ulteriore cortesia? Se non hai particolari problemi potresti mandarmi il
tuo script? Cosě almeno parto da una configurazione corretta e la
personalizzo.
Adesso comunque faccio un po' di prove con i comandi che mi hai suggerito.
Ciao
Fabio
P.S. Complimenti per il sito web.

 tuo script? [...]
Ogni situazione e' un po' un caso a se'. Comunque, tra la miriade di
script sull'argomento eccoti questo che salva il backup zippato su di
un PC via SAMBA. L'elenco dei file e delle dir. da backuppare va scritto
nel file /root/backup-list, che provvederai a infarcire di cose man mano
che fai le tue personalizzazioni al sistema:
------------------------------------------------------------------------------
#!/bin/bash
#
# Esegue un backup dei files e delle dir riportate nel file backup-list
# del computer "nettuno"
#
# Condivisione SAMBA dove scrivere il backup:
condivisione=//nettuno/salsi
# User/Pass:
user=salsi
pass=XXXXXXXX
# Nome file di backup:
bk=backup-$( date +%Y-%m-%d ).tar.gz
# Elenco file e dir. da backuppare:
bk_list=/root/backup-list
mount_point=/mnt/bk-$$
if [ ! -f $bk_list ]; then
    echo "Manca il file $bk_list"
    exit 1
fi
echo "FILE E DIR. DA BACKUPPARE:"
cat $bk_list
echo "CREO IL MOUNT POINT $mount_point:"
mkdir $mount_point || exit 1
chmod u=rwx,go= $mount_point
echo "MOUNTING DI $condivisione:"
#smbmount $pc $mount_point -N || exit 1
smbmount "$condivisione" "$mount_point" -o username="$user",password="$pass" \
    || exit 1
echo "BACKUP DEL SISTEMA SU $pc/$bk:"
tar c --atime-preserve  --preserve-permissions \
    --verbose \
    --same-owner --files-from $bk_list \
    --gzip -f $mount_point/$bk
# se smonto troppo presto mi dice che e' occupato. rimedio:
sleep 60
umount $mount_point
echo "VERIFICA:"
#smbmount $pc $mount_point -N || exit 1
smbmount "$condivisione" "$mount_point" -o username="$user",password="$pass" \
    || exit 1
gunzip -c $mount_point/$bk > /dev/null
sleep 60
umount $mount_point
rmdir $mount_point
echo "FINE"
------------------------------------------------------------------------------


 che fai le tue personalizzazioni al sistema:
Grazie
Fabio