View previous topic :: View next topic |
Author |
Message |
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Sat Dec 02, 2006 4:07 am Post subject: [Howto] Création d'un Stage 5 |
|
|
Dernière MAJ : 2007-04-04
Howto Création d'un Stage 5
Table des matières
- Mise en contexte
- Différences entre le Stage 4 et le Stage 5
- Création d'un Stage 5
- Création d'un Stage 5 Standard
- Création d'un Stage 5 Custom
- Avantages et Inconvénients
- Options possibles
- Copie de l'archive Stage 5
- Procédure de Restauration
- Restauration d'un Stage 5 Standard
- 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
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
- 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.
- On va avoir un gain de vitesse,car on ne prendra pas en backup tous les répertoires.
- 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
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
|
Last edited by d2_racing on Thu Apr 05, 2007 5:08 pm; edited 14 times in total |
|
Back to top |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Sun Dec 03, 2006 12:05 am Post subject: |
|
|
Qu'est-ce que vous en pensez ? |
|
Back to top |
|
|
antoine_ Tux's lil' helper
Joined: 07 Apr 2006 Posts: 103 Location: Paris ou Bordeaux
|
Posted: Sun Dec 03, 2006 9:26 am Post subject: |
|
|
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 |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Sun Dec 03, 2006 9:06 pm Post subject: |
|
|
Tu veux dire :
Code: |
rm /usr/portage/distfiles/*
|
Les packages de portage se ramassent là dans mon cas. |
|
Back to top |
|
|
kwenspc Advocate
Joined: 21 Sep 2003 Posts: 4954
|
Posted: Tue Dec 05, 2006 8:43 am Post subject: |
|
|
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 |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Tue Dec 05, 2006 12:22 pm Post subject: |
|
|
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 |
|
Back to top |
|
|
CourJuS Tux's lil' helper
Joined: 26 Jun 2004 Posts: 99 Location: Belgique
|
Posted: Wed Dec 06, 2006 1:29 am Post subject: |
|
|
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 .
Mes 2 cents
Bonne nuit tout le monde. |
|
Back to top |
|
|
grosnours Apprentice
Joined: 05 Jun 2006 Posts: 210 Location: Belgium
|
Posted: Sun Dec 31, 2006 10:27 am Post subject: |
|
|
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 |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Sun Dec 31, 2006 8:22 pm Post subject: |
|
|
Et bien oui, c'est l'option --verify
Je vais mettre à jour le howto sur le champ |
|
Back to top |
|
|
davidou2a Guru
Joined: 15 Dec 2006 Posts: 574 Location: Ajaccio
|
Posted: Tue Jan 02, 2007 6:40 pm Post subject: |
|
|
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 |
|
|
davidou2a Guru
Joined: 15 Dec 2006 Posts: 574 Location: Ajaccio
|
Posted: Tue Jan 02, 2007 8:20 pm Post subject: |
|
|
ç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 |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Wed Jan 03, 2007 2:33 am Post subject: |
|
|
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. |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Wed Jan 03, 2007 9:14 am Post subject: |
|
|
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 |
|
|
truc Advocate
Joined: 25 Jul 2005 Posts: 3199
|
Posted: Wed Jan 03, 2007 3:53 pm Post subject: |
|
|
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 |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Wed Jan 03, 2007 4:36 pm Post subject: |
|
|
Et faire tout ça dans un screen peut être intéressant également.
Enjoy ! _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
Ezka Guru
Joined: 17 Feb 2005 Posts: 352 Location: par là, mais vraiment ...
|
Posted: Wed Jan 03, 2007 9:52 pm Post subject: |
|
|
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 .
Si on plante tout -> on dépack le tout, sinon on peut se contenter de faire que la moitié des choses on gagne un peu de temps ... surtout si comme moi, votre home ressemble a une gigantesque caverne d'Ali-Baba
De mémoire (j'ai pas mon script sous la main) je fait comme ça... et ça fonctionne pas trop mal _________________ Ez. |
|
Back to top |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Thu Jan 04, 2007 2:24 am Post subject: |
|
|
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 |
|
Back to top |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Thu Jan 04, 2007 2:33 am Post subject: |
|
|
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 ? |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Thu Jan 04, 2007 9:03 am Post subject: |
|
|
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 |
|
|
davidou2a Guru
Joined: 15 Dec 2006 Posts: 574 Location: Ajaccio
|
Posted: Thu Jan 04, 2007 2:08 pm Post subject: |
|
|
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 |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Thu Jan 04, 2007 2:58 pm Post subject: |
|
|
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 |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Fri Jan 05, 2007 12:46 am Post subject: |
|
|
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 ? |
|
Back to top |
|
|
Ezka Guru
Joined: 17 Feb 2005 Posts: 352 Location: par là, mais vraiment ...
|
Posted: Fri Jan 05, 2007 9:22 am Post subject: |
|
|
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 |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Fri Jan 05, 2007 6:55 pm Post subject: |
|
|
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é... |
|
Back to top |
|
|
d2_racing Bodhisattva
Joined: 25 Apr 2005 Posts: 13047 Location: Ste-Foy,Canada
|
Posted: Fri Jan 05, 2007 7:00 pm Post subject: |
|
|
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 |
|
Back to top |
|
|
|
|
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
|
|