Le Mardi 21 Ao�t 2001 08:31, vous avez �crit :
> Le Lundi 20 Ao�t 2001 11:41, Didier NOACK a �crit :
> > J'interf�re skus�-moa --o)
> >
> > Est-ce que ceci est �galement valable pour les sauvegardes grav�es sur
> > cdrom ??
> >
> > Ha que je vous remercie, ha que oui !!
> >
> > Cordialement
>
> J'interfere aussi en r�pondant :-)
>
> Sur CD, comme le support UDF est exp�rimental, il faut cr�er des images
> avec mkisofs puis graver avec cdrecord.
>
> Une solution serait de faire un batch cr�ant un gros fichier tar.gz puis
> split pour creer des fichiers d'environ 600MO , mkisofs des petits
> fichiers, puis gravure avec cdrecord .
>
> Je sauvegarde r�guli�rement ma config soit /etc/* /root et 2 utilisateurs.
> Le total fait 900MO.
>
> En ne prenant pas en compte les fichiers temp, les donn�es que ceratins
> programmes savent r�g�n�rer s'ils ne les trouvent pas on obtient un tgz de
> 160MO.
>
> Le script g�nere un fichier tgz, une image ISO, grave, remonte en loop et
> fait une comparaison entre le fichier tgz du cd et les fichiers sur le dd
> en cr�ant un fichier log. Si cela int�resse qelqu'un je peux lui envoyer.
>
> Cordialement.
Bonjour,
Plusieurs utilisateurs m'ont demand� de leur envoyer le script.
Lancement :
-----------------
3 modes
Mode 1 : /root/cd-save/sauv-linux affiche l'aide
Mode 2 : /root/cd-save/sauv-linux -i ex�cute la sauvegarde en mode interactif
Mode 3 : /root/cd-save/sauv-linux -a ex�cure la sauvegarde en mode automatique
-- fin lancement --
Principe :
-------------
- cr�er dans /xcdroast/sauv-lin.tgz contenant les directories inclus dans
/root/cd-sauv/sauv-linux dans la variable dir_a_sauvegarder et exclure ceux
de /root/cd-save/exfile.
- Cr�er un fichier /xcdroast/sauv-lin.iso
- graver de fichier
- monter le device grace � un loop sur /mnt/cdwriter
- faire une comparaison entre en tgz du fichier et le fichiers du dd.
En mode 2, les diff�rentes sont enchain�es automatiquement.
En mode 3, l'utilisation ench�ne manuellement les diff�rentes op�rations.
-- fin principe --
Installation :
-----------------
su
mot de passe root
mkdir /xcdroast
chown root.root /xcdroast
mkdir /root/cd-save
copier /root/cd-save/exfile avec le contenu du mail
copier /root/cd-save/sauv-linux avec le contenu du mail
lui donner le droit x
-- Fin d'installation --
Configuration :
- le graveur doit �tre SCSI ou �mul� SCSI.
----------------------------------------------------------
- ajouter dans la variable dir_a_sauvegarder les fichiers/repertoires au
sauvegarder.
- ajouter dans exfile les fichiers/r�pertoires � exclure.
- faire cdrecord --scanbus ceci permet de connaitre les informations sur le
graveur x,x,x (x �tant un entier). Mettre � jour la variable grav_unit dans
/root/cd-save/sauv-linux
- juster speed en fonction des possibilit�s du graveur.
-- fin configuration --
Utilisation :
---------------
- Ouvrir le graveur
- Mettre un CDRW
- sous /root lancer /root/cd-save/sauv-linux
- Attendre la fin du programme ( ~ 30mn).
-- fin utilisation --
A faire :
----------
- gerer les tgz >600MO
-- Fin a faire --
Fichier : /root/cd-save/exfile
-- debut du fichier --
/etc/mtab
/etc/cups/certs
/root/tmp
/root/Desktop/Corbeille
/root/.kde/share/apps/kio_http/cache
/root/.mc/tmp
/home/cherie/tmp
/home/cherie/Desktop/Corbeille
/home/cherie/.kde/share/apps/kio_http/cache
/home/cherie/.mc/tmp
/home/jbj/tmp
/home/jbj/Desktop/Corbeille
/home/jbj/.kde/share/apps/kio_http/cache
/home/jbj/.mc/tmp
-- fin du fichier --
fichier : /root/cd-save/sauv-linux
-- debut du fichier --
#!/bin/bash
#directory de sauvegarde
sav_dir=/xcdroast
#fichier d'exclusion
ex_file=/root/cd-save/exfile
#fichier tar
tgz_file=sauv-lin.tgz
# fichier ISO
iso_file=sauv-lin.iso
# directory de montage de CDWRITER
cdwriter_dir=/mnt/cdwriter
# Fichier de log.
log_file=/var/log/backuplinux
# Heure de lancement
TIME=$(date)
# adresse du graveur
grave_unit="1,1,0"
# Mode de fonctionnement
interactif="N"
# Directories � sauvegarder
dir_a_sauvegarder="/etc /root /home/cherie /home/jbj"
# vitesse du graveur
speed='8'
function cree_tar {
echo "$(date) : Cr�ation du fichier $sav_dir/$tgz_file." >>$log_file
echo "$(date) : Cr�ation du fichier $sav_dir/$tgz_file."
if [ "$interactif" = "Y" ]; then
rm $sav_dir/$tgz_file
tar -cPzv -X $ex_file $dir_a_sauvegarder -f $sav_dir/$tgz_file
else
rm $sav_dir/$tgz_file >> $log_file
tar -cPz -X $ex_file $dir_a_sauvegarder -f $sav_dir/$tgz_file >>$log_file
fi
}
function cree_iso {
echo "$(date) : Cr�ation du fichier $sav_dir/$iso_file � partir de
$sav_dir/$tgz_file." >>$log_file
echo "$(date) : Cr�ation du fichier $sav_dir/$iso_file � partir de
$sav_dir/$tgz_file."
if [ "$interactif" = "Y" ]; then
rm $sav_dir/$iso_file
mkisofs -r -T -o $sav_dir/$iso_file $sav_dir/$tgz_file
else
rm $sav_dir/$iso_file >> $log_file
mkisofs -r -T -o $sav_dir/$iso_file $sav_dir/$tgz_file >> $log_file
fi
}
function gravure {
echo "$(date) : Gravure de $sav_dir/$iso_file sur l'unit� $grave_unit avec
une vitesse demand�e de : $speed." >>$log_file
echo "$(date) : Gravure de $sav_dir/$iso_file sur l'unit� $grave_unit avec
une vitesse demand�e de : $speed."
if [ "$interactif" = "Y" ]; then
cdrecord -v -eject speed=$speed dev=$grave_unit blank=fast -data
$sav_dir/$iso_file
else
cdrecord -eject speed=$speed dev=$grave_unit blank=fast -data
$sav_dir/$iso_file >> $log_file
fi
}
function compare {
echo >>$log_file
echo "$(date) : V�rification de la sauvegarde." >>$log_file
echo "$(date) : V�rification de la sauvegarde."
echo
if [ "$interactif" = "Y" ]; then
mount $cdwriter_dir
tar -dz -f $cdwriter_dir/$tgz_file >>$log_file
cat $log_file
eject $cdwriter_dir
else
mount $cdwriter_dir >> $log_file
tar -dz -f $cdwriter_dir/$tgz_file >>$log_file
cat $log_file
eject $cdwriter_dir
fi
}
function affiche_log {
echo "$(date) : Visualisation des fichiers du syst�me de backup LINUX."
echo "Taille des fichiers."
echo
ls -al $sav_dir/$tgz_file
ls -al $sav_dir/$iso_file
ls -al $log_file
echo "Visualisation du fichier de log des backup Linux."
echo
cat $log_file
echo
}
function mode_interactif {
Reponse=0
interactif="Y"
while [ "$Reponse" != "q" ]; do
echo "(t)ar des directories."
echo "(i)so."
echo "(g)ravure."
echo "(c)ompare."
echo "(a)affiche le fichier de log."
echo "(q)uit"
read Reponse
clear
if [ "$Reponse" = "t" ]; then
cree_tar
fi
if [ "$Reponse" = "i" ]; then
cree_iso
fi
if [ "$Reponse" = "g" ]; then
gravure
fi
if [ "$Reponse" = "c" ]; then
compare
fi
if [ "$Reponse" = "a" ]; then
affiche_log
fi
done
}
# mode non interactif -> creation tar, iso, gravure, comparaison
if [ "$1" = "-a" ]; then
echo "$(date) : Lancement de $0, mode non interactif."
echo "$(date) : Lancement de $0, mode non interactif." >>$log_file
cree_tar
cree_iso
gravure
compare
exit
# mode interactif
elif [ "$1" = "-i" ] ; then
echo "$(date) : Lancement de $0, mode interactif."
echo "$(date) : Lancement de $0, mode interactif." >>$log_file
mode_interactif
exit
# erreur de parametre d'entree
else
echo usage: $0 -a lance le cycle complet gravure + comparaison de la
sauvegarde.
echo usage: $0 -i lance le mode interactif.
exit
fi
-- fin du fichier --
Ne pas inclure les lignes :
--debut du fichier --
-- fin du fichier --
:-)
Cordialement.
--
JB JACQUET
[EMAIL PROTECTED]
Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
Rendez-vous sur "http://wwww.mandrakestore.com"