Aller au contenu

Sujets conseillés

Posté

Je viens d'avoir mon 2ème DD.

Je vais l'utiliser pour faire des backups.

Que pensez vous de ce script ?

(trouvé sur http://www.zepitt.ch/spip/rubrique.php3?id_rubrique=6)


#!/bin/bash

# répertoires de base

SECOND_HD=/backup # nom du disque monté
BACKUP=$SECOND_HD/save_`date +%w` # répertoire de sauvegarde (cible)
SYS=$BACKUP/SYS # sous-répertoire de sauvegarde des fichiers système
LOGS=$BACKUP/LOGS # sous-répertoire de sauvegarde des logs
HOME=/home # répertoire à sauver (source)
EXCLURE=backup_2dd_exlure # liste des sous-répertoires à exclure
ADRESSEMAIL="admin_AT_domain.tld" # adresse e-mail pour envoyer la quittance de sauvegarde

# on monte le disque, on efface la sauvegarde de J-7 et
# on crée les répertoires correspondants à la nouvelle sauvegarde
mount $SECOND_HD
rm $BACKUP -rf 2>/dev/null 1>/dev/null
mkdir $BACKUP 2>/dev/null 1>/dev/null
mkdir $SYS 2>/dev/null 1>/dev/null
mkdir $LOGS 2>/dev/null 1>/dev/null


# on sauve les fichiers système
tar -zpcvf $SYS/apache.tar.gz /usr/local/apache/ /usr/local/lib/php.ini
tar -zpcvf $SYS/named.tar.gz /var/named /etc/named.conf
tar -zpcvf $SYS/systeme.tar.gz /etc/passwd /etc/shadow
tar -zpcvf $SYS/qmail.tar.gz /var/qmail
/etc/rc.d/init.d/mysql stop
tar -zpcvf $SYS/mysql.tar.gz /home/mysql
/etc/rc.d/init.d/mysql start


# on sauve les répertoires
for i in $(ls -1 $HOME)
do
if grep $i $EXCLURE >/dev/null 2>&1
then
echo "on saute"
else
tar -zpcvf $BACKUP/$i.tar.gz $HOME/$i 1>>$LOGS/$i.log 2>>$LOGS/$i.log
echo $i >> $LOGS/resume.log
fi
done


# on ajoute date et heure, et taille du dique
echo -------------------------------- >> $LOGS/resume.log
date >> $LOGS/resume.log
df >> $LOGS/resume.log


# on quittance la sauvegarde par e-mail
cat $LOGS/resume.log | mail -s "contenu de la sauvegarde" $ADRESSEMAIL


# on redescend le disque
umount $SECOND_HD
hdparm -y /dev/hdc

Posté

Tu devrais plutôt utiliser rsync ... cela t'éviterait de créer des archives au format tar... et tu pourrais aussi garder plusieurs versions de sauvegarde.

Dan

PS: merci d'utiliser CODEBOX au lieu de CODE lorsque le code dépasse une dizaine de lignes ;)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...