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";

Répondre à