Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Howto] Création d'un Stage 5
View unanswered posts
View posts from last 24 hours

Goto page 1, 2, 3, 4  Next  
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Sat Dec 02, 2006 4:07 am    Post subject: [Howto] Création d'un Stage 5 Reply with quote

Dernière MAJ : 2007-04-04

Howto Création d'un Stage 5

Table des matières
  1. Mise en contexte
  2. Différences entre le Stage 4 et le Stage 5
  3. Création d'un Stage 5
    1. Création d'un Stage 5 Standard
    2. Création d'un Stage 5 Custom
      • Avantages et Inconvénients
      • Options possibles


  4. Copie de l'archive Stage 5
  5. Procédure de Restauration

    1. Restauration d'un Stage 5 Standard
    2. Restauration d'un Stage 5 Custom





1) Mise en contexte
Salut tout le monde, suite à une restauration catastrophique d'un Stage 4, j'ai décider d'écrire un howto pour éviter ce genre de problème.
Le Stage 4 fonctionne normalement bien sauf quand on est pas chanceux comme moi :evil:
Si vous avez un Gensplash, un /mnt qui pointe sur des partitions NTFS ou autre, vous aller avoir des problèmes avec le Stage 4.car il ne backup pas ces répertoires par défaut.

Voici ma configuration :

Code:

#
# Sample boot menu configuration file
#

# Boot automatically after 30 secs.
timeout 5
# By default, boot the first entry.
default 1
splashimage=(hd0,8)/boot/grub/splash.xpm.gz

title=GentooLinux-2.6.18-r3
root=(hd0,8)
kernel /boot/kernel-2.6.18-gentoo-r3 root=/dev/sda9 video=vesafb:mtrr,ywrap,1024x768-32@85 splash=silent,fadein,theme:livecd-2006.1 quiet CONSOLE=/dev/tty1
initrd (hd0,8)/boot/fbsplash-livecd-2006.1
#kernel /boot/kernel-2.6.18-gentoo-r3 root=/dev/sda9 video=radeonfb:mtrr,ywrap,1024x768-32@75


title=WindowsXP
rootnoverify (hd0,0)
makeactive
chainloader +1

title=GentooLinux-2.6.18-r2
root=(hd0,8)
kernel /boot/kernel-2.6.18-gentoo-r2 root=/dev/sda9 video=radeonfb:mtrr,ywrap,1024x768-32@75


Code:

# This file is edited by fstab-sync - see 'man fstab-sync' for details
# /etc/fstab: static file system information.
# $Header: /home/cvsroot/gentoo-src/rc-scripts/etc/fstab,v 1.14 2003/10/13 20:03:38 azarah Exp $
#
# noatime turns off atimes for increased performance (atimes normally aren't
# needed; notail increases performance of ReiserFS (at the expense of storage
# efficiency).  It's safe to drop the noatime options if you want and to
# switch between notail and tail freely.

# <fs>             <mountpoint>    <type>     <opts>            <dump/pass>
/dev/sda9      /      ext3      defaults,noatime   0 1
/dev/sda10      none      swap      sw         0 0
none         /proc      proc      defaults      0 0   
none         /dev/shm   tmpfs      nodev,nosuid,noexec   0 0
/dev/cdroms/cdrom0   /mnt/cdrom0   auto      noauto,user      0 0
/dev/cdroms/cdrom1   /mnt/cdrom1   auto      noauto,user      0 0
/dev/sda8      /mnt/pont   vfat      defaults,rw,user,umask=0 0 0
/dev/sda1      /mnt/win_c   ntfs      defaults,ro,user,nls=iso8859-1,nls=utf8,umask=0 0 0
/dev/sda5      /mnt/win_d   ntfs      defaults,ro,user,nls=iso8859-1,nls=utf8,umask=0 0 0   
/dev/sda6      /mnt/win_e   ntfs      defaults,ro,user,nls=iso8859-1,nls=utf8,umask=0 0 0
/dev/sda7      /mnt/win_f   ntfs      defaults,ro,user,nls=iso8859-1,nls=utf8,umask=0 0 0
# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
#/dev/BOOT      /boot      ext2      noauto,noatime      1 1
#/dev/ROOT      /      xfs      noatime         0 0
#/dev/SWAP      none      swap      sw         0 0
#/dev/cdroms/cdrom0   /mnt/cdrom   iso9660      noauto,ro      0 0
#/dev/fd0      /mnt/floppy   auto      noauto         0 0
#
# NOTE: The next line is critical for boot!
#none         /proc      proc      defaults      0 0
#
# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for
# POSIX shared memory (shm_open, shm_unlink).
# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will
#  use almost no memory if not populated with files)
# Adding the following line to /etc/fstab should take care of this:
#
#none         /dev/shm   tmpfs      defaults      0 0
#
#/dev/hdd                /media/cdrom            auto    user,exec,noauto,managed 0 0
#/dev/hdc                /media/cdrecorder       auto    user,exec,noauto,managed 0 0
#/dev/floppy/0           /media/floppy           auto    user,exec,noauto,managed 0 0
#/dev/sdb1               /media/sdb1             auto    user,exec,noauto,managed 0 0


Voici les erreurs que j'ai eu lors de la restauration du Stage 4 :

-Une tonne de messages à propos de udev.rule et de udev-event.
-Le script n'a pas sauvegardé /mnt, alors j'ai eu des warnings à propos de FSTAB.
-Mon Gensplash n'a pas démarré, car il manquait /dev/console et /dev/TTY1.

2) Différences entre le Stage 4 et le Stage 5

Tout d'abord, le Stage 4 c'est un script qu'on trouve ici : http://blinkeye.ch/mediawiki/index.php/GNU/Linux_System_Backup_Script_%28stage4%29

Le Stage 4 c'est un script qui prendre en backup seulement les dossiers qui sont nécessaire pour un fonctionnement minimal d'une Gentoo.Donc, ça ne prend pas un backup intégral d'une partition.De plus, le Stage 4 ne backup jamais le répertoire /dev et c'est un problème lorsqu'on a un Gensplash, car il va manquer /dev/console et /dev/tty1.

Le Stage 5 t'en qu'à lui, c'est une série de commandes et on peut faire ce qu'on veut.En effet, on peut prendre une copie intégrale d'une partition ou carrément prendre seulement certains répertoires.

Tout comme le Stage 4, il y a un processus de vérification de l'intégrité de l'image .tar.bz2 qui est fait à la fin du processus.

Enfin, j'ai créé le Stage 5 pour combler ce besoin et j'ai pris le # suivant pour le stage.

3) Création d'un Stage 5

Création d'un Stage 5 Standard
Code:

# su -
# rm /usr/portage/distfiles/*
# mkdir /mnt/backup
# mount -o bind / /mnt/backup
# cd /mnt/backup
# tar --exclude  stage5.tar.bz2 -cvvjpf stage5.tar.bz2 .
# time bzip2 -tv stage5.tar.bz2
# umount /mnt/backup


Le point est important après le bz2 :)
La création du .tar est assez longue...patience.

Ce Stage 5 fait comme Ghost ou Acronis True Image.En effet, il backup au complet une partition.Avec ce Stage, on peut prendre en backup un disque dur au complet et le transférer vers un nouveau disque dur sans problèmes.
Cette méthode peut être utilisée par les administrateurs ,car en cas de crash, on peut restorer seulement une partition qui a fait défaut.

Création d'un Stage 5 Custom

Le Stage 5 Custom c'est un Stage 5 qui a des paramètres en entrée.

Avantages et Inconvénients

  1. Cela permet de prendre en backup une installation Gentoo ou carrément une partition et ça permet d'éviter de prendre en backup des répertoires ou fichiers qu'on ne veut pas sauvegarder.
  2. On va avoir un gain de vitesse,car on ne prendra pas en backup tous les répertoires.
  3. On doit faire très attention aux répertoires qu'on va exclure, car ceci pour entrainer des problèmes lors de restauration d'un système au complet ,car peut-être qu'il va manquer des fichiers importants.



Options possibles

Voici un exemple de commande qui permet d'exclure /tmp,/var/tmp et /usr/portage/distfiles
Notez au passage qu'on ne doit pas mettre de / devant les répertoires, car on a binder la racine.

Code:

# tar --exclude tmp --exclude var/tmp --exclude usr/portage/distfiles --exclude stage5.tar.bz2 -cvvjpf stage5.tar.bz2 .



De plus certaines personnes veulent avoir un Stage 5 qui va contenir un minimum de répertoire, pour ce faire vous pouvez utilisez ceci :

Code:

# rm -rf /usr/portage/distfiles/* && rm -rf /var/tmp/portage/* && rm -rf /var/log/portage/*
# tar cvvjpf --exclude=dev --exclude=proc --exclude=sys --exclude=tmp --exclude=stage5.tar.bz2  stage5.tar.bz2 .


Par contre, avec cette commande, lors de la procédure de restauration,vous allez devoir faire quelques commandes de plus pour regénérer vos répertoires manquants.

Code:

# mkdir {dev,proc,tmp,sys} && chmod 1777 tmp && cd dev && MAKEDEV generic


Certaines personnes veulent aussi prendre en backup seulement leur répertoire home.Pour ce faire vous devez faire ceci :

Code:

# mount -o bind /home/$user /mnt/backup
# cd /mnt/backup
# tar --exclude stage5.tar.bz2 -cvvjpf stage5.tar.bz2 .


Vous pouvez aussi prendre tout en backup sauf votre home et faire ceci :

Code:

# mount -o bind / /mnt/backup
# cd /mnt/backup
# tar --exclude stage5.tar.bz2 --exclude home/$user -cvvjpf stage5.tar.bz2 .
# time bzip2 -tv stage5.tar.bz2

# umount /mnt/backup
# mount -o bind /home/$user /mnt/backup
# cd /mnt/backup
# tar --exclude stagehome.tar.bz2 -cvvjpf stagehome.tar.bz2 .
# time bzip2 -tv stagehome.tar.bz2
# umount /mnt/backup
# mkdir /mnt/backup/full
# cd /
# cp stage5.tar.bz2 /mnt/backup/full/
# cp /home/$user/stagehome.tar.bz2 /mnt/backup/full
# tar -cvf stagefull.tar stage5.tar.bz2 stagehome.tar.bz2


4)Copie de l'archive Stage 5

Vous pouvez graver le .tar.bz2 avec K3B ou carrément le mettre sur une autre partition.

5)Procédure de Restauration


Restauration d'un Stage 5 Standard

La première chose à faire c'est de booter avec le LiveCD de Gentoo avec l'option docache.

Booter avec le LiveCD de Gentoo
Code:

#gentoo docache

Formatage de la partition destination
Code:

# mke2fs -j /dev/sda9 dans mon cas.

#umount /mnt/cdrom


Enlever le LiveCD de Gentoo et mettre le DVD ou le CD qui contient votre backup.

Code:

#mount /dev/cdrom /mnt/cdrom

#mount -t ext3 /dev/sda9 /mnt/gentoo dans mon cas

# cd /mnt/cdrom
# ls -la

# tar xjvpf /mnt/cdrom/stage5.tar.bz2 -C /mnt/gentoo/
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev

# chroot /mnt/gentoo /bin/bash
# env-update
# source /etc/profile
# emerge --sync
# exit
# cd /
# umount /mnt/cdrom
# umount /mnt/gentoo/dev
# umount /mnt/gentoo/proc
# umount /mnt/gentoo
# reboot

Maintenant vous aller avoir un Gentoo qui va être sur la coche.

Restauration d'un Stage 5 Custom

La procédure de restauration d'un Stage 5 Custom utilise la même méthode qu'un Stage 5 standard à quelques exceptions près.

Par contre,vous devez ajouter vos propres commandes pour être sûr que le tout soit intègre, car à partir de la commande tar ça va changer.

Exemple :
Code:

#gentoo docache
# mke2fs -j /dev/sda9 dans mon cas.
#umount /mnt/cdrom
#mount /dev/cdrom /mnt/cdrom
#mount -t ext3 /dev/sda9 /mnt/gentoo dans mon cas
# cd /mnt/cdrom
# ls -la
# tar xjvpf /mnt/cdrom/stage5.tar.bz2 -C /mnt/gentoo/
# mkdir {dev,proc,tmp,sys}
# chmod 1777 tmp
# cd dev
# MAKEDEV generic
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
# chroot /mnt/gentoo /bin/bash
# env-update
# source /etc/profile
# emerge --sync
# exit
# cd /
# umount /mnt/cdrom
# umount /mnt/gentoo/dev
# umount /mnt/gentoo/proc
# umount /mnt/gentoo
# reboot

_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec


Last edited by d2_racing on Thu Apr 05, 2007 5:08 pm; edited 14 times in total
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Sun Dec 03, 2006 12:05 am    Post subject: Reply with quote

Qu'est-ce que vous en pensez ?
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
antoine_
Tux's lil' helper
Tux's lil' helper


Joined: 07 Apr 2006
Posts: 103
Location: Paris ou Bordeaux

PostPosted: Sun Dec 03, 2006 9:26 am    Post subject: Reply with quote

Salut
Si j'ai bien compris tu compresses tout depuis la racine.
Afin de limiter la taille de l'archive, il serait peut-être intéressant de vider /etc/portage/distfiles auparavant non ? (chez moi le répertoire fait 2,8Go)
Sinon tu as raison, ça me fait penser que si un jour j'ai une merde sur mon système, je serais content de ne pas tout reprendre à zéro (enfin au stage 3 en l'occurence).
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Sun Dec 03, 2006 9:06 pm    Post subject: Reply with quote

Tu veux dire :

Code:

rm /usr/portage/distfiles/*


Les packages de portage se ramassent là dans mon cas.
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
kwenspc
Advocate
Advocate


Joined: 21 Sep 2003
Posts: 4910

PostPosted: Tue Dec 05, 2006 8:43 am    Post subject: Reply with quote

Pour augmenter la vitesse (je déconne pas) du tar: enlever la verbosité. :)
On voit pas ce qu'il fait, certes, mais sur un gros archivage comme celui-ci le gain de temps n'est pas négligeable, vraiment.
_________________
membre officieux du SAV Ati GEntoo
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Tue Dec 05, 2006 12:22 pm    Post subject: Reply with quote

Mais quand il y a des erreurs de socket ou autre chose, je pense que ça vaut la peine...

Enfin, est-ce qu'il y a une option dans tar qui permet de vérifier l'intégrité de l'archive après sa création ?,car dans le script Stage 4 de Blinkeye, il y a un processus de vérification à la fin de l'exécution du backup...

Je vais attendre de vos nouvelles avant de modifier le howto :)
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
CourJuS
Tux's lil' helper
Tux's lil' helper


Joined: 26 Jun 2004
Posts: 99
Location: Belgique

PostPosted: Wed Dec 06, 2006 1:29 am    Post subject: Reply with quote

Bonsoir (Bonjours serais plus juste mais bon)

Voila j'ai il y a peu crée un stage4 pour deployer des machines de test rapidement.
Avant la création du backup persso je suprime tout se qui se trouve dans les répertoires suivant
Code:
rm -r /tmp/*
rm -r /var/tmp
rm -r /var/log/*.log (en prenant soin de recrée les fichiers log vide bien que c'est à mon avis facultatif).

De plus mon stage4 risque de me servire longtemp, donc j'ai suprimé l'arbre de portage (gain de place et de compression/décompression)
Code:
 rm -r /usr/portage/*

En plus suprimer les clefs d'ssh est une bonne idée su le CD sert pour plusieurs machines par example.
Code:
rm /etc/ssh/ssh_host*

Pour affiné la config, j'ai pondu un ptit script tout bête (p0rks mode ON) qui permet de générer un /etc/issue à la volé au premier boot de la machine.
La génération de se script donnera les infos suivante quand on se connect via SSH.
Code:
 * Version de votre Gentoo
 * Uname -a (info Kernel)
 * CPU
 * Ram
 * Disque Dur
 * Adresse IP (marche que si IP statique ou alors faut un cron, j'ai pas encore trouvé de solution)

De plus il modifie le Hostname en fonction du CPU pour une identification unique, utile quand on à un server DHCP+NAMED pour du DDNS (trop pratique je serais plus m'en passer ...)

Code:
#!/bin/bash
# Set Hostname based on CPU info
FREQ=`cat /proc/cpuinfo | grep -i mhz |tail -n 1 | awk -F : '{print $2}' | awk -F " "  '{print $1}' |awk -F . '{print $1}'`
PROC=`cat /proc/cpuinfo | grep name |tail -n 1 | awk -F : '{print $2}' | awk -F " " '{print $1}'`
FULLPROC=`cat /proc/cpuinfo | grep name |tail -n 1 | awk -F ": " '{print $2}'`
HOST="$PROC-$FREQ"

# Set your hostname from your CPU info
if [ `hostname` == stage4 ]; then
        echo "# /etc/conf.d/hostname" > /etc/conf.d/hostname
        echo "# Set to the hostname of this machine" >> /etc/conf.d/hostname
        echo "HOSTNAME=\"$HOST\"" >> /etc/conf.d/hostname
        hostname $HOST
fi

# Version of your gentoo
cat /etc/gentoo-release > /etc/motd
echo >> /etc/motd
uname -a >> /etc/motd
echo >> /etc/motd
#for i in `grep "^config_eth[0-9]" /etc/conf.d/net | cut -d\" -f 2 | awk '{ print $1}'`
#       do
#                echo "ip        : $i" >> /etc/motd
#        done
echo "Hostname  : `hostname`" >> /etc/motd
echo "Prossesor : $FULLPROC @ $FREQ Mhz" >> /etc/motd
echo "Memory    : `free -m |grep -i mem  |awk -F " " '{print $2}'` Mo" >> /etc/motd
echo "Hard-disk : `fdisk  -l |grep Di |awk -F "/dev" '{print $2}' |awk -F "," '{print $1}'`" >> /etc/motd
echo "Inet      : `ifconfig  |grep inet |awk -F "r:" '{print $2}' |awk -F " " '{print $1}' |grep -v "127.0.0.1"`" >> /etc/motd
echo >> /etc/motd
echo >> /etc/motd

cp /etc/motd /etc/issue

Pour qu'il s'exécute au boot, je place le chemin vers le script dans
Code:
 /etc/conf.d/local.start

Cependant j'ai remarqué quelques souci pour le hostname, certain (beacoup) des CPU ont des espaces dans leur description, si quelqu'un qui métrise sed pourais me doner un coup de pouce je lui ferais des papouilles promis :P.

Mes 2 cents :)

Bonne nuit tout le monde.
Back to top
View user's profile Send private message
grosnours
Apprentice
Apprentice


Joined: 05 Jun 2006
Posts: 210
Location: Belgium

PostPosted: Sun Dec 31, 2006 10:27 am    Post subject: Reply with quote

d2_racing wrote:
Mais quand il y a des erreurs de socket ou autre chose, je pense que ça vaut la peine...

Enfin, est-ce qu'il y a une option dans tar qui permet de vérifier l'intégrité de l'archive après sa création ?,car dans le script Stage 4 de Blinkeye, il y a un processus de vérification à la fin de l'exécution du backup...

Je vais attendre de vos nouvelles avant de modifier le howto :)

A ne pas backup: /proc, /tmp, /usr/portage/distfiles, /var/tmp/portage . /usr/portage et /var/cache/edb/dep peuvent aussi ne pas être backupés, mais il faudra untar un portage-latest ou emerge --sync avant le reboot qui suit la restauration.

Il y a une option à tar pour qu'il vérifie l'archive, "man tar" est ton ami.
_________________
grosnours
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Sun Dec 31, 2006 8:22 pm    Post subject: Reply with quote

Et bien oui, c'est l'option --verify

Je vais mettre à jour le howto sur le champ :)
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
davidou2a
Guru
Guru


Joined: 15 Dec 2006
Posts: 574
Location: Ajaccio

PostPosted: Tue Jan 02, 2007 6:40 pm    Post subject: Reply with quote

quelqu un a testé le tuto en l'etat? si ça marche du moins que c est comfirmé je le fais ça evitera que je fasse le boulet :) si je merdoie :)
_________________
L'enfer je connais, il s'appelle Windows...
Back to top
View user's profile Send private message
davidou2a
Guru
Guru


Joined: 15 Dec 2006
Posts: 574
Location: Ajaccio

PostPosted: Tue Jan 02, 2007 8:20 pm    Post subject: Reply with quote

ça me cree un fichier nommé W dans ma racine qui si on lui fait tar -tvf contient bien le systeme est ce moi qui me suis raté??

ça marche chez moi quand je fais ceçi:
Code:
# su -
# rm /usr/portage/distfiles/*
# mkdir /mnt/backup
# mount -o bind / /mnt/backup
# cd /mnt/backup
# tar --exclude=stage5.tar.bz2 -cvjpfW stage5.tar.bz2 .
# mv /mnt/backup/stage5.tar.bz2 /mnt/autrepartition/
# umount /mnt/backup

_________________
L'enfer je connais, il s'appelle Windows...
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Wed Jan 03, 2007 2:33 am    Post subject: Reply with quote

Salut, je viens d'enlever l'option W pour être certain que tout soit comme avant.

Peux-tu réessayer ? , car moi ça fonctionne #1.
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
yoyo
Bodhisattva
Bodhisattva


Joined: 04 Mar 2003
Posts: 4273
Location: Lyon - France

PostPosted: Wed Jan 03, 2007 9:14 am    Post subject: Reply with quote

Plutôt que de supprimer le $DISTFILES, pourquoi ne pas simplement l'exclure de l'archive ?? Ca éviterait de re-donwloader les sources en cas de mise à jour mineure (pacth etc.).

Bon boulot,

Enjoy !
_________________
La connaissance s'accroît quand on la partage.
JCB
Back to top
View user's profile Send private message
truc
Advocate
Advocate


Joined: 25 Jul 2005
Posts: 3199

PostPosted: Wed Jan 03, 2007 3:53 pm    Post subject: Reply with quote

kwenspc wrote:
Pour augmenter la vitesse (je déconne pas) du tar: enlever la verbosité. :)
On voit pas ce qu'il fait, certes, mais sur un gros archivage comme celui-ci le gain de temps n'est pas négligeable, vraiment.


ou alors si on fait ça dans un screen il suffit de changer de "terminal virtuel", et ainsi l'affichage ne ralenti plus la chose, puis en revenant on peut voir où ça en est, ça permet de se donner une idée de l'évolution.. :)
_________________
The End of the Internet!
Back to top
View user's profile Send private message
yoyo
Bodhisattva
Bodhisattva


Joined: 04 Mar 2003
Posts: 4273
Location: Lyon - France

PostPosted: Wed Jan 03, 2007 4:36 pm    Post subject: Reply with quote

Et faire tout ça dans un screen peut être intéressant également. :wink:

Enjoy !
_________________
La connaissance s'accroît quand on la partage.
JCB
Back to top
View user's profile Send private message
Ezka
Guru
Guru


Joined: 17 Feb 2005
Posts: 352
Location: par là, mais vraiment ...

PostPosted: Wed Jan 03, 2007 9:52 pm    Post subject: Reply with quote

Comme cela a déjà été dit, c'est ptêtre pas mal de faire ça :
Code:
tar --exclude  stage5.tar.bz2 /proc /tmp /var/tmp /usr/portage/distfiles -cvvjpf stage5.tar.bz2 .

plutot que :
Code:
tar --exclude  stage5.tar.bz2 -cvvjpf stage5.tar.bz2 .

Juste histoire de pas sauver les trucs qui servent a rien.

Et a être un peu plus titilleux on peut faire ça en 2 parties :
Sauver le systeme qui roule tout seul avec :
Code:
tar --exclude  stage4.tar.bz2 /proc /tmp /var/tmp /usr/portage/distfiles /home -cvvjpf stage4.tar.bz2 .

Pas besoin de garder le home pour faire une rescue systeme.
mais on n'oublie pas de se faire aussi le home ... histoire d'avoir le stage5 ...
Code:
tar -cvvjpf home.tar.bz2 /home

et pour faire joli on peut tout mettre ensemble
Code:
tar cf stage5.tar stage4.tar.bz2 home.tar.bz2

et hop on a le stage5 :lol: .

Si on plante tout -> on dépack le tout, sinon on peut se contenter de faire que la moitié des choses :wink: on gagne un peu de temps ... surtout si comme moi, votre home ressemble a une gigantesque caverne d'Ali-Baba :lol:

De mémoire (j'ai pas mon script sous la main) je fait comme ça... et ça fonctionne pas trop mal :wink:
_________________
Ez.
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Thu Jan 04, 2007 2:24 am    Post subject: Reply with quote

davidou2a wrote:
ça me cree un fichier nommé W dans ma racine qui si on lui fait tar -tvf contient bien le systeme est ce moi qui me suis raté??

ça marche chez moi quand je fais ceçi:
Code:
# su -
# rm /usr/portage/distfiles/*
# mkdir /mnt/backup
# mount -o bind / /mnt/backup
# cd /mnt/backup
# tar --exclude=stage5.tar.bz2 -cvjpfW stage5.tar.bz2 .
# mv /mnt/backup/stage5.tar.bz2 /mnt/autrepartition/
# umount /mnt/backup


Je sais pourquoi ça marche pas ton truc....tu n'as pas besoin de metre un = après le exclude
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Thu Jan 04, 2007 2:33 am    Post subject: Reply with quote

C'est très bien Ezka, il y a toujours de la place pour une amélioration.

Par contre, le Stage 5 a été conçu pour pouvoir rebooter la machine avec un minimum de manipulation et même on pourrait
ne pas faire de emerge --sync et ça booterais pareil :)

Par contre, les points que vous avez amenés, c'est du solide, c'est certain qu'on peut améliorer le script selon nos goûts et c'est super :)

Enfin, je pense qu'en enlevant le mode verbose tout en rajoutant -W, ça va permettre de savoir s'il n'y a pas eu d'erreur...

Je ne sais pas le gain de vitesse qu'on peut avoir en enlevant -vv ?
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
yoyo
Bodhisattva
Bodhisattva


Joined: 04 Mar 2003
Posts: 4273
Location: Lyon - France

PostPosted: Thu Jan 04, 2007 9:03 am    Post subject: Reply with quote

Dans le même esprit qu'Ezka, il me semble qu'il existe une option tar pour se limiter à une partition.
Ca permettrait d'avoir des archives de chaque partition (et pourquoi pas une archive globale du système) ce qui limiterait les manipulations en cas de crash d'une seule partition : plus besoin de formater toutes les partitions, de recréer les répertoires adéquats (pour ceux qui ont un fstab un peu tortueux) etc.

Mes 0.02 cents
_________________
La connaissance s'accroît quand on la partage.
JCB
Back to top
View user's profile Send private message
davidou2a
Guru
Guru


Joined: 15 Dec 2006
Posts: 574
Location: Ajaccio

PostPosted: Thu Jan 04, 2007 2:08 pm    Post subject: Reply with quote

d2_racing wrote:
Je sais pourquoi ça marche pas ton truc....tu n'as pas besoin de metre un = après le exclude

Ce que j'ai posté bizzarement passe chez moi avec ou sans le =, d'ailleurs je sais pas pourquoi j'ai mis ça, sinon exclure /proc /tmp et /var/tmp ça implique pas de ce fait d'autres manips ??

sinon pour ma part j'ai aussi fait des backup séparés de /home et de /boot histoire d'avoir un systeme operationnel dessuite (sauf erreur de ma part)
j'ai un systeme sans X (limite fin d'install) et un avec X sans WM au cas ou je merdoie (ce qui m'est deja arrivé)

Sinon un script gerant ça et faisant des sauvegardes incrementales via crontab ça peut etre sympa non? bon on sort peut etre du sujet stage 5 :)
_________________
L'enfer je connais, il s'appelle Windows...
Back to top
View user's profile Send private message
yoyo
Bodhisattva
Bodhisattva


Joined: 04 Mar 2003
Posts: 4273
Location: Lyon - France

PostPosted: Thu Jan 04, 2007 2:58 pm    Post subject: Reply with quote

davidou2a wrote:
Sinon un script gerant ça et faisant des sauvegardes incrementales via crontab ça peut etre sympa non? bon on sort peut etre du sujet stage 5 :)
Ben il y a dump mais ça n'est que pour ext je crois (il existe des équivalents pour d'autres fs).
Sinon, de mémoire, il existe une option pour que tar "update" l'archive (==ne modifie que les fichiers ajoutés/modifiés) donc non "universel".
Enfin, avant de ré-inventer la roue, il fadrait peut-être regardé ce qui existe déjà non ?
Ici par exemple :http://packages.gentoo.org/packages/?category=app-backup
_________________
La connaissance s'accroît quand on la partage.
JCB
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Fri Jan 05, 2007 12:46 am    Post subject: Reply with quote

Je viens de relire le script de Blinkeye et il utilise l'option test pour vérifier l'intégrité de l'archive.

http://blinkeye.ch/mediawiki/index.php/GNU/Linux_System_Backup_Script_(stage4)#The_Script

On dirait que l'option -W ne fonctionne pas du tout :(

Code:

if [ "$tar_output" == "--split" ]; then
                if [ "`cat "$stage4Name.$stage4postfix"_*"" | $zip --test 2>&1`" != "" ]; then
                        echo -e "* Integrity check failed. Re-run the script and check your hardware."
                        exit -1
                fi
        else
                if [ "`$zip --test  $stage4Name.$stage4postfix 2>&1`" != "" ]; then
                        echo -e "* Integrity check failed. Re-run the script and check your hardware."
                        exit -1
                fi
        fi

        # everything went smoothly"
        echo -e "* Everything went smoothly. You successfully created a stage4."



Est-ce qu'il y a un moyen simple d'ajouter une commande à tar sans faire un if ?
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
Ezka
Guru
Guru


Joined: 17 Feb 2005
Posts: 352
Location: par là, mais vraiment ...

PostPosted: Fri Jan 05, 2007 9:22 am    Post subject: Reply with quote

Je pense que Yoyo parlait de ça pour rester sur la même partition :
Code:
-l
--one-file-system       Stay in local file system when creating an ar-
                             chive (do not cross mount points).



Pourtant j'ai bien l'option W :
Code:
-W
--verify                Attempt to verify the archive after writing it.


Essaye avec --verify, mais es-ce que ça marche avec une archive bz2 ?

A voir, en tout les cas tu peux utiliser bzip2 avec l'option -t
Code:
-t --test
              Check  integrity  of the specified file(s), but don't decompress
              them.  This really performs a  trial  decompression  and  throws
              away the result.


NB : man d'unix, il y a ptêtre des varaiantes avec gnu linux.
_________________
Ez.
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Fri Jan 05, 2007 6:55 pm    Post subject: Reply with quote

Bon, voici ce que ça donne l'option verify

Code:

gentootux backup # tar --verify --exclude  test.tar.bz2 -cvvjpf test.tar.bz2 .
tar: Ne peut vérifier des archives compressées.
Pour en savoir davantage, faites: « tar --help » ou « tar --usage ».


Je pense que le format bz2 n'est pas supporté...
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
d2_racing
Moderator
Moderator


Joined: 25 Apr 2005
Posts: 13046
Location: Ste-Foy,Canada

PostPosted: Fri Jan 05, 2007 7:00 pm    Post subject: Reply with quote

Bon j'ai testé l'option test et voici ce que ça donne :

Code:

gentootux backup # tar --exclude  test.tar.bz2 -cvvjpf test.tar.bz2 .
drwxr-xr-x sylvain/users     0 2007-01-05 13:54 ./
-rw-r--r-- sylvain/users 8002776 2005-09-17 10:18 ./debuter_avec_gimp_v2.pdf
-r-xr-xr-x sylvain/users  563823 2005-07-26 20:00 ./Numériser0002.jpg
-r-xr-xr-x sylvain/users  671441 2005-07-26 20:13 ./Numériser0010.jpg
-r-xr-xr-x sylvain/users  539401 2004-02-13 15:13 ./100_1391.jpg

gentootux backup # tar -tvf  test.tar.bz2
drwxr-xr-x sylvain/users     0 2007-01-05 13:54 ./
-rw-r--r-- sylvain/users 8002776 2005-09-17 10:18 ./debuter_avec_gimp_v2.pdf
-r-xr-xr-x sylvain/users  563823 2005-07-26 20:00 ./Numériser0002.jpg
-r-xr-xr-x sylvain/users  671441 2005-07-26 20:13 ./Numériser0010.jpg
-r-xr-xr-x sylvain/users  539401 2004-02-13 15:13 ./100_1391.jpg


Voici maintenant avec Bzip2 :)

Code:

gentootux backup # bzip2 -tv test.tar.bz2
  test.tar.bz2: ok
gentootux backup #               


Je pense que là on peut commencer à penser que le .bz2 est intègre :)
_________________
Sysadmin of GentooQuébec.org
Wiki
Signature
IRC on Freenode : #gentoo-quebec
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Goto page 1, 2, 3, 4  Next
Page 1 of 4

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum