> Mon hebergeur est OVH, donc oui il doit proposer des trucs mais comme je ne
> sais pas vraiment ce que je dois chercher.... je n avais pas vraiment pense
> a regarder de ce cote la.
> 
> En fait je ne connais pas le nom de cette technique ou meme celui des
> outils a utilser pour mettre en oeuvre cette solution ou l on cree un clone
> pour tester quelquechose dessus.
> 

Bonjour,

J'ai fait un pauet aufsroot qui est très pratique et qui permet de tester sur
la machine même. Je teste tout le temps les mis à jours avec ça.

François Boisson
paquet aufsroot (c'est un script bash)
http://boisson.homeip.net/depot/pool/jessie/i386/aufsroot_0.4-1_all.deb
ou
deb http://boisson.homeip.net/depot jessie divers
Rq (j'ai mis jessie mais c'est variable):
$ ls */*/aufsroot*
jessie/amd64/aufsroot_0.4-1_all.deb  vivid/amd64/aufsroot_0.4-1_all.deb  
wheezy/amd64/aufsroot_0.4-1_all.deb  wheezy/i386/aufsroot_0.4-1_all.deb  
wily/amd64/aufsroot_0.4-1_all.deb
jessie/i386/aufsroot_0.4-1_all.deb   vivid/i386/aufsroot_0.4-1_all.deb   
wheezy/amd64/aufsroot_0.4_all.deb    wheezy/i386/aufsroot_0.4_all.deb    
wily/i386/aufsroot_0.4-1_all.deb

François Boisson

Le README:
Il y a deux choses dans ce paquet, 

1) Un programme temporoot permettant de créer un chroot consistant en la racine
du système montée en lecture seule avec par dessus un système de fichiers en
aufs. Concrètement voilà ce que cela donne:


* Repérez une partition non utilisé par la racine, mettons /home et trouver un 
nom de répertoire, mettons /home/temporaire. 

* Tapez sous root
Code:
temporoot m /home/temporaire

Le programme renverra tapez chroot /home/temporaire/mnt

* Faites un chroot sur /home/temporaire/mnt
Cela se voit avec un prompt différent:
Code:
root@portos:/home/francois# chroot /home/temporaire/mnt/
root@TEMPORAIRE:/ #exit
root@portos:/home/francois#

* Quand vous avez fini faites
temporoot u

Cas d'erreurs: Si vous avez le message
Code:
mount: wrong fs type, bad option, bad superblock on aufs,
       missing codepage or helper program, or other error
       (for several filesystems (e.g. nfs, cifs) you might
       need a /sbin/mount.<type> helper program)
       In some cases useful info is found in syslog - try
       dmesg | tail  or so
C'est que vous utilisez une partition que vous montez sur elle même. Dans ce 
cas, il faut soit trouver un autre point d'attache (une clef USB avec un ext3, 
un système ramfs fait par

Code:
mount -t tmpfs none /home/temporaire

Dans ce deuxième cas, vous perdez les modifications à l'extinction de la 
machine, etc.)


Exemple:
Code:
root@portos:/home/francois# mount -t tmpfs none /home/temporaire

Cela afin d'avoir un système de fichier indépendant de /home. Sinon il faut
trouver un système de fichiers ne figurant pas dans /etc/fstab 

root@portos:/home/francois# temporoot m /home/temporaire
/dev/sda6 /var var
/dev/sda8 /home home
/dev/sda2 /data data
Faites chroot /home/temporaire/mnt
root@portos:/home/francois# chroot /home/temporaire/mnt/
root@TEMPORAIRE:/ # cd /boot
root@TEMPORAIRE:/boot # ls -l
total 33160
-rw-r--r-- 1 root root   134432 sept. 19 17:46 config-3.5.4-fb-aufs
-rw-r--r-- 1 root root   139016 févr. 21 17:28 config-3.8.0-fb-aufs
drwxr-xr-x 3 root root    12288 févr. 27 11:30 grub
-rw-r--r-- 1 root root 11588125 nov.   2 09:17 initrd.img-3.5.4-fb-aufs
-rw-r--r-- 1 root root 11809923 févr. 21 19:14 initrd.img-3.8.0-fb-aufs
-rw-r--r-- 1 root root  2148979 sept. 19 22:33 System.map-3.5.4-fb-aufs
-rw-r--r-- 1 root root  2232103 févr. 21 18:56 System.map-3.8.0-fb-aufs
-rw-r--r-- 1 root root  2875184 sept. 19 22:33 vmlinuz-3.5.4-fb-aufs
-rw-r--r-- 1 root root  2994528 févr. 21 18:56 vmlinuz-3.8.0-fb-aufs
root@TEMPORAIRE:/boot # rm -Rf *
root@TEMPORAIRE:/boot # ls -l
total 0

Là on a l'impression d'avoir tout détruit, on peut faire plein d'autres choses
comme une mise à jour osée

root@TEMPORAIRE:/boot # exit
root@portos:/home/francois# ls -l /boot
total 33160
-rw-r--r-- 1 root root   134432 sept. 19 17:46 config-3.5.4-fb-aufs
-rw-r--r-- 1 root root   139016 févr. 21 17:28 config-3.8.0-fb-aufs
drwxr-xr-x 3 root root    12288 févr. 27 11:30 grub
-rw-r--r-- 1 root root 11588125 nov.   2 09:17 initrd.img-3.5.4-fb-aufs
-rw-r--r-- 1 root root 11809923 févr. 21 19:14 initrd.img-3.8.0-fb-aufs
-rw-r--r-- 1 root root  2148979 sept. 19 22:33 System.map-3.5.4-fb-aufs
-rw-r--r-- 1 root root  2232103 févr. 21 18:56 System.map-3.8.0-fb-aufs
-rw-r--r-- 1 root root  2875184 sept. 19 22:33 vmlinuz-3.5.4-fb-aufs
-rw-r--r-- 1 root root  2994528 févr. 21 18:56 vmlinuz-3.8.0-fb-aufs

Tout est là

root@portos:/home/francois# chroot /home/temporaire/mnt/
root@TEMPORAIRE:/ # ls /boot
root@TEMPORAIRE:/ # exit

On peut faire des aller/retours

root@portos:/home/francois# temporoot u /home/temporaire

démonte le système. Ilk est important de n'avoir aucun processus tournant dans
le chroot.

Voilà. Attention, manipuler avec précaution mais personnellement ce script me 
rend bien des services pour faire un environnement temporaire ou tester une 
mise à jour. Il nécessite un noyau avec aufs comme celui de wheezy. 
Ne marche pas sous squeeze donc.

2) Un système permettant de monter une racine directement en aufs à partir de
grub.  Pour cela il convient de faire les choses suivantes:

* Rjaouter aufs au fichier /etc/initramfs-tools/modules

* Dans le fichier /etc/default/grub, rajouter l'option boot=tempo à la variable
GRUB_CMDLINE_LINUX_DEFAULT, par exemple
GRUB_CMDLINE_LINUX_DEFAULT="boot=tempo nomodeset quiet"

* Refaites l'initrd avec update-initramfs

Si vous boutez comme cela, rien ne changera, mais si vous rajoutez à la racine 
un fichier TEMPO contenant

UUID=e3783217-84f0-4fa7-99ad-7ab13e18ce51

L'UUID est celui de la partition sur laquelle seront installés les répertoires
en lecture/ecriture. Cette partition ne sera pas montée si elle est listée 
dans /etc/fstab.

Si le fichier TEMPO contient RAM, un système de fichiers temporaire est crée. 
Toutes les modifications
seront supprimés au reboute suivant.

Le système démarrera en montant la racine en aufs suivant un fonctionnement 
comme précédemment. Pour supprimer cela il suffit de supprimer le fichier /TEMPO
sur la partition de la racine ce qui se fait en tapant stopaufs (la racine est
montée en lecture seule, il y a une petite manoeuvre). C'est la seule 
modification éventuelle de la racine.


François Boisson

Répondre à