editor, reviewer
53
modifications
(Page créée avec « == Présentation et principe == Il arrive souvent qu'on ait envie de tester un paquet, voire une mise à jour ou encore un tentative pour réparer une machine. Le problè... ») |
|||
(8 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 93 : | Ligne 93 : | ||
deb http://boisson.homeip.net/debian wheezy divers | deb http://boisson.homeip.net/debian wheezy divers | ||
(dépot non signé). Ce paquet '''ne modifie pas les fichiers systèmes''' et donc est | (dépot non signé). Ce paquet '''ne modifie pas les fichiers systèmes''' et donc est inoffensif à l'installation. | ||
== Le paquet aufsroot == | == Le paquet aufsroot == | ||
Ce paquet contient à la fois un script permettant de faire automatiquement un chroot comme expliqué en première partie et tout ce qui est nécessaire pour bouter sur une racine AUFS. | |||
Il faut évidemment installer le paquet | |||
=== temporoot === | |||
Le paquet contient un script /usr/bin/temporoot d'utilisation simple: | |||
'''Sous root''', tapez | |||
temporoot m | |||
Vous aurez quelque chose ressemblant à | |||
root@portos:/tmp# temporoot m | |||
/dev/sda7 /home home | |||
Faites chroot /tmp/temporoot/mnt | |||
root@portos:/tmp# | |||
La ligne /dev/sda7 /home home signifie simplement que /dev/sda7 est montée sur /home. | |||
Il suffit de faire | |||
chroot /tmp/temporoot/mnt | |||
pour être dans le chroot. | |||
root@portos:/tmp# chroot /tmp/temporoot/mnt | |||
root@TEMPORAIRE:/ # | |||
Vous pouvez noter que le prompt a changé. En effet suite à une histoire malheureuse, j'ai rajouté une modification (temporaire donc) du .bashrc de root permettant de différencier le prompt du chroot du prompt du système normal. Ça permet d'éviter des manipulations osées en croyant être dans le chroot alors qu'on est dans le systèmé réel. | |||
On sort du chroot par un ^D et un simple | |||
temporoot u | |||
démonte tout le système: | |||
root@portos:/tmp# temporoot u | |||
Démontage de /tmp/temporoot/mnt//home | |||
root@portos:/tmp# | |||
On peut prendre autre chose que le répertoire de travail /tmp/temporoot proposé, il suffit de faire | |||
temporoot m /home/temporaire | |||
pour que celui soit /home/temporaire. À noter que ici on aura comme message | |||
root@portos:/tmp# temporoot m /home/temporaire | |||
/dev/sda7 /home home | |||
/dev/sda7 non utilisable | |||
Faites chroot /home/temporaire/mnt | |||
root@portos:/tmp# | |||
La ligne /dev/sda7 non utilisable signifie que cette partition supportant le répertoire de travail ne peut être incorporée dans le montage. Elle est bêtement ignorée. | |||
Le système se démonte par | |||
temporoot u /home/temporaire | |||
=== Boute sur racine AUFS === | |||
Le paquet contient un fichier /etc/initramfs-tools/scripts/tempo fabriquant la racine et un README d'explications. | |||
Pour bouter sur une racine en AUFS avec ce paquet, procédez comme suit | |||
# Rajouter «aufs» dans le fichier /etc/initramfs-tools/modules | |||
# Refaites les initrd, pour cela faites la commande | |||
update-initramfs -k all -u | |||
# Créer un fichier /TEMPO contenant soit «RAM» (le répertoire de travail temporoot sera en RAM, l'inconvénient est que les manipulations seront perdues), soit une ligne «UUID=e3783217-84f0-4fa7-99ad-7ab13e18ce51» (sans les guillemets bien sûr), l'UUID est celui de la partition sur laquelle seront créés les répertoires temporaires (une arborescence sous ''temporoot''). L'interêt dans ce dernier cas est que les modifications déjà effectuées se retrouveront au boute AUFS suivant. Si la partition est présente dans /etc/fstab, elle ne sera pas montée. | |||
La machine est prête. Pour bouter avec une racine AUFS, lors du menu grub, après avoir sélectionner le noyau voulu, tapez sur '''e''' et rajoutez dans les options du boute ''boot=tempo'', par exemple remplacez le ''quiet'' final (fréquent) par ''boot=tempo quiet''. Tapez sur F10 pour démarrer et laissez faire. Des messages précisant le montage et indiquant une éventuelle partition non montée sont affichés. C'est la seule différence avec un boute normal. | |||
Si vous regardez les répertoires montés, vous obtenez cela (par exemple avec un système temporaire en RAM): | |||
udev on /dev type devtmpfs (rw,relatime,size=1973056k,nr_inodes=493264,mode=755) | |||
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000) | |||
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=395944k,mode=755) | |||
none on /terre type tmpfs (rw,relatime) | |||
none on /terre/tempo type tmpfs (rw,relatime) | |||
/dev/disk/by-uuid/b781c58b-e69c-4726-9e48-9a533a8a69a2 on /terre/tempo/ROOT type ext4 (ro,relatime,data=writeback) | |||
aufs on / type aufs (rw,relatime,si=cf2cfe18bc22b654) | |||
/dev/disk/by-uuid/acd75cb7-d44b-4a14-b9ed-f34508b7b3f8 on /terre/tempo/M_home type ext4 (ro,relatime,data=ordered) | |||
aufs on /home type aufs (rw,relatime,si=cf2cfe18bfb1ba54) | |||
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k) | |||
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,relatime,size=791884k) | |||
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) | |||
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime) | |||
tmpfs on /run/shm type tmpfs (rw,nosuid,nodev,relatime,size=791884k) | |||
rpc_pipefs on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime) | |||
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime) | |||
On distingue les systèmes de fichiers RAM sur /terre et /terre/tempo, la racine / qui est bien de type aufs et les partitions /dev/disk/by-uuid/b781c58b-e69c-4726-9e48-9a533a8a69a2 et /dev/disk/by-uuid/acd75cb7-d44b-4a14-b9ed-f34508b7b3f8 montées en lecture seule. | |||
On peut désormais basculer en sid, installez des paquets expérimentaux, etc. Lors du reboute suivant, on retrouvera le système d'origine. | |||
Rq: Le seul bug (bizarre) à ce jour est le refus de dropbox de fonctionner. Cela vient sans doute d'une utilisation de dropbox de signaux indiquant qu'un système de fichiers a été modifié pour lancer la synchronisation. Il y a sans doute un souci avec aufs. Cela signifie qu'on tourne avec un dropbox non connecté le temps de la session sur une racine AUFS. | |||
[[Utilisateur:fran.b|François Boisson]] | |||
[[Category:Paquets]] | |||
[[Category:Trucs_et_Astuces]] |