J'ai réalisé un script bash en GPL il y a un an qui me rend bien service. Peut-être il vous sera utile.
Alors voilà, c'est livré tel quel. Je ne ferai plus de modifs faute de temps, mais faites en ce que vous voulez.
Perso je l'utilise en automatique avec 2 tâches "cron" :
32 19 * * * root /usr/local/bin/yabss --restaureDVD system --taille 0
5 15 * * 6 root /usr/local/bin/yabss --restaureDVD backup --taille 1950 --systeme
|
http://cadtm.orleans.free.fr/yabss-1.45.tar.gz
+-------------+
| YABSS v1.45 |
+-------------+
YABSS v1.45 (Yet Another Backup Simple Script)
usage : yabss [options]
fichier de configuration : /etc/yabssrc
options disponibles :
--conf /mon/fichier : pour spécifier un fichier de configuration alternatif.
--copie /mnt/dossier : pour stocker l'archive sur le point de montage /mnt/dossier.
--restaureDVD nom : pour graver sur DVD_RW en gardant l'archive de suffixe "nom" lors du formatage.
--exclusion /mon/dossier : pour exclure un dossier.
--ftp : pour uploader les archives sur un compte ftp distant.
--graveCD : pour graver les archives sur CD-RW (en multi-sessions, avec formatage si nécessaire).
--graveDVD : pour graver les archives sur DVD_RW (en multi-sessions, avec formatage si nécessaire).
--help : pour afficher ce message et quitter.
--kill : pour tuer certaines applis avant de construire les archives.
--mail : pour envoyer un rapport par mail.
--mdp : pour créer une archive zip protégée par mot de passe.
--nom nom_sans_espace : pour spécifier le nom des archives.
--nom_volume NAME : pour spécifier le nom de volume du média de gravure.
--source /mon/dossier : pour spécifier manuellement le dossier à archiver (par défaut : aucune exclusion).
--systeme : pour faire une sauvegarde complète du système.
--taille SIZE : pour spécifier la taille maximale SIZE en Mo des fichiers archives (0 pour ne pas découper).
--version : pour afficher le numéro de version et quitter.
---Exemples---
1) option --source appelée 3 fois pour archiver les dossiers /boot, /etc et /home
yabss --source /boot --source /etc --source /home
2) sauvegarde totale avec envoie du fichier de log par mail et stockage dans /mnt/smb
yabss --systeme --mail --copie /mnt/smb
3) sauvegarde avec envoie de mail et upload sur compte ftp (dossiers à archiver spécifiés dans /etc/yabssrc)
yabss --mail --ftp
4) sauvegarde totale du dossier personnel de "user" sous le nom "homeUSER", découpée en fichiers de 700Mo
yabss --source /home/user --nom homeUSER --taille 700
5) sauvegarde de tout le dossier /home sauf /home/user1 et /home/user2
yabss --source /home --exclusion /home/user1 --exclusion /home/user2
6) sauvegarde du dossier /etc, avec protection par mot de passe (mot de passe spécifié dans /etc/yabssrc)
yabss --mdp --source /etc
7) sauvegarde avec stockage sur CD-RW (dossiers à archiver spécifiés dans /etc/yabssrc)
yabss --graveCD
8) sauvegarde du système avec stockage sur un DVD_RW nommé YABSS_DVD, sans découper l'archive
yabss --systeme --graveDVD --taille 0 --nom_volume YABSS_DVD
9) sauvegarde des dossiers spécifiés dans /etc/yabssrc,
gravure sur DVD avec conservation des archives "system" et "home" les plus récentes (si un formatage est nécessaire).
yabss --restaureDVD system --restaureDVD home
ATTENTION : il est impossible d'exclure un dossier dont le nom contient un ou plusieurs espaces.
|
Exemple de fichier de conf (à mettre dans /etc/yabssrc) :
#----------------------------------------------------------------------------------------
# variables utiles au fonctionnement du script yabss (Yet Another Backup Simple Script) |
#----------------------------------------------------------------------------------------
# priorité de traitement :
prio="18"
# dossier de stockage local :
dest="/space/backup"
# type de compression ("gz" pour gzip, "bz2" pour bzip2 ou "" pour ne pas compresser) :
comp="gz"
# dossiers à sauvegarder :
src="/boot /etc /home/olivier/Documents /home/olivier/.thunderbird"
# dossiers à exclure de la sauvegarde :
nosrc="/home/olivier/Documents/archives"
# dossiers supplémentaires (ie en plus de /sys /proc) à exclure en mode --systeme :
nosrcsys="/space /mnt /home"
# applications tuées lors d'un appel en mode --kill :
apps="thunderbird-bin mozilla-firefox-bin kmail kontact"
# taille en MegaOctets des archives découpées (0 pour ne pas découper) :
taille="1024"
# taille en MegaOctets des archives en mode --systeme (0 pour ne pas découper) :
taillesys="0"
# utilisateur propriétaire des archives finales :
user="olivier"
# serveur ftp distant :
ftphost="ftpperso.free.fr"
# dossier de stockage distant (non crée par yabss !)
ftpdest="backup"
# utilisateur du compte ftp :
ftpuser=""
# mot de passe du compte ftp :
ftppass=""
# mail où envoyer le rapport (configurer ssmtp par exemple) :
logmail=machin.truc@fai.fr
# mot de passe de l'archive .tar.zip (mode --mdp)
zippass=monmotdepasse
# périphérique du graveur
graveur="/dev/hdc"
# point de montage du graveur
mountcd="/mnt/cdrom"
# nom de volume du media gravé
nom_volume="YABSS"
|
Enjoy !
Message édité par jotenakis le 22-01-2007 à 22:27:23
---------------
Jotenakis