now, c pegase qui fera les sauvegarde
darcs-hash:20040513212841-9f550-ba2dbf769d335289132811692aead17e4a676edc.gz
This commit is contained in:
parent
693dcd9fae
commit
c85b67996b
1 changed files with 0 additions and 69 deletions
69
backup.sh
69
backup.sh
|
@ -1,69 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
## Sauvegarde des fichiers de conf et du site web CRANS sur pegase
|
||||
## Sayan 02/10/2003
|
||||
## Ajout de la synchro du site web : Sayan 04/10/2003
|
||||
## Ajout de la synchro des mails : Sayan 19/10/2003
|
||||
## Ajout de la synchro des news et des homes : Sayan 15/11/2003
|
||||
## Ajout de la synchro du wiki et de jabber : Manathan 01/05/2004
|
||||
## Ajout de la synchro de mailman : Manathan 02/05/2004
|
||||
## Passage en modulo 4 semaine pour les sauv par rsync : Manathan 05/05/2004
|
||||
## Nettoyage : Manathan 06/05/2004
|
||||
|
||||
## Que sauvegarder ?
|
||||
confs="etc usr/cvs-rep CRANS usr/scripts boot/config*" # via bzip2
|
||||
site_web="/home/httpd/CVS-Repository" # via rsync
|
||||
mails="/var/spool/mail"
|
||||
news="/var/spool/news"
|
||||
wiki="/var/local/lib/wiki"
|
||||
jabber="/var/lib/jabber"
|
||||
mailman="/var/lib/mailman/archives"
|
||||
homes="/home"
|
||||
|
||||
## Sauvegarde des confs: tar gz ($confs + dpkg_selections)
|
||||
cd /
|
||||
temp_dir=$(mktemp -d)
|
||||
nom_archive=$temp_dir"/backup_"$(hostname)"_"$(date --iso-8601)".tar.bz2"
|
||||
nom_selections=$temp_dir"/selections"
|
||||
dpkg --get-selections > $nom_selections || exit 1
|
||||
tar -cjf $nom_archive $confs .$nom_selections || exit 2
|
||||
scp $nom_archive backupcrans@pegase: || exit 3
|
||||
rm -rf $temp_dir
|
||||
|
||||
# rsync over ssh pour le site web, les homes, les mails et les news
|
||||
# archive, compress, sparse, hard links, CVS exclude, remote shell
|
||||
# archive is rlptgoD : recursive, symlinks, perms, times, group, owner, Devices
|
||||
# suppr les fichiers non existant sur zamok
|
||||
# synchro journalière, switch par semaine sur 4 rep
|
||||
week=$(date +%W) # numéro de la semaine
|
||||
week_mod4=$(( $week % 4 ))
|
||||
|
||||
## Sauvegarde du Site web et des News, wiki, jabber, mailman
|
||||
## la man page donne: -a, equivalent to -rlptgoD donc on vire le t
|
||||
## on vire le z car la compression met zamok a cheval
|
||||
|
||||
rsync -aSH --delete $site_web backupcrans@pegase:~/backup-$week_mod4/httpd || exit 4
|
||||
rsync -aSHe ssh --delete $news backupcrans@pegase:~/backup-$week_mod4/var/spool || exit 5
|
||||
rsync -aSHe ssh --delete $wiki backupcrans@pegase:~/backup-$week_mod4/wiki || exit 6
|
||||
rsync -aSHe ssh --delete $jabber backupcrans@pegase:~/backup-$week_mod4/jabber || exit 7
|
||||
rsync -aSHe ssh --delete $mailman backupcrans@pegase:~/backup-$week_mod4/mailman || exit 8
|
||||
|
||||
## Sauvegarde des mails
|
||||
# rsync change le atime quand il lit le fichier, on perd la date de dernière consultation des mails pour le ménage des comptes
|
||||
mount /var/spool/mail -o remount,noatime
|
||||
rsync -aSHe ssh --delete $mails backupcrans@pegase:~/backup-$week_mod4/var/spool || exit 9
|
||||
mount /var/spool/mail -o remount,atime
|
||||
|
||||
## Sauvegarde des homes
|
||||
# Les homes sont donnés à backupcrans.backup
|
||||
# "Permission denied" errors occur because backupcrans is not root on pegase. Ignoring
|
||||
temp=$(mktemp)
|
||||
temp_mail=$(mktemp)
|
||||
rsync -aSH --delete $homes backupcrans@pegase:~/backup-$week_mod4 &> $temp
|
||||
cat $temp | grep -viEe "^((recv_generator)|(opendir)|(stat)).*Permission denied$" | grep -vie "^skipping non-regular file" | grep -vie "^rsync error: some files could not be transferred" | grep -vie "^file has vanished" > $temp_mail
|
||||
if [ -s $temp_mail ]
|
||||
then
|
||||
cat $temp_mail | mail -s "rsync error" roots
|
||||
fi
|
||||
rm $temp
|
||||
rm $temp_mail
|
Loading…
Add table
Add a link
Reference in a new issue