Chroot¶
Chroot d'un système Linux complet¶
Le prérequis est de démarrer sur un autre système Linux : - Le média de la même distribution dans le cas d'une réparation - Depuis un autre système Linux installé en dualboot, c'est aussi possible
On va créer un point de montage dans /mnt/linux par exemple, mais on peut tout à fait créer un point de montage où on veut.
On identifiera avec la commande suivante les partitions et leur taille :
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 90G 0 disk
├─sda1 8:1 0 35G 0 part
├─sda2 8:2 0 53G 0 part
└─sda3 8:3 0 2G 0 part
Ici : sda1 est ma racine à 35Go, sda2 est le /home et sda3 est le swap. Pour plus de détails (systèmes de fichiers, labels, UUID, ...) on peut utiliser :
lsblk -f
Ensuite, on va monter la racine du système concerné dans la future arborescence :
Dans cet exemple, j'utilise /dev/sda1 qui est la partition racine, évidemment, remplacez en fonction de votre cas.
mount /dev/sda1 /mnt/linux
Ensuite, montez si vous en avez l'utilité d'autres partitions (/boot ou /home etc ... )
Exemple avec /home en /dev/sda2
mount /dev/sda2 /mnt/linux/home
Ensuite, il ne faut pas oublier de monter les dossiers spéciaux nécessaires au fonctionnement du système dans le cas d'une réparation de celui-ci :
Copier vers le presse-papierCode BASH :
mount --bind /dev /mnt/linux/dev
mount -t proc /proc /mnt/linux/proc
mount -t sysfs /sys /mnt/linux/sys
Enfin, basculer vers le nouveau système avec la commande chroot vue précédemment. On va appeler un shell bash dans ce cas :
chroot /mnt /bin/bash
Le prompt change alors et vous pouvez maintenant effectuer des opérations comme si vous étiez dans votre système installé directement. Par exemple : réparer le chargeur d'amorçage, mettre à jour le système, ou réinitialiser des mots de passe.
Quitter le chroot¶
Pour sortir de l'environnement du chroot, il suffit sumplement de quitter le système chrooté avec la commande
exit
Puis une fois revenu sur le système live, démonter tous les systèmes de fichiers précédemment montés :
Commencer par les dossiers spéciaux :
umount /mnt/linux/dev
umount /mnt/linux/proc
umount /mnt/linux/sys
Puis par les partitions additionnelles :
umount /mnt/linux/home
Et enfin la racine :
umount /mnt/linux
On pourra tout démonter d'un coup avec l'option -R de la commande umount qui fait les démontages de façon récursive :
umount -R /mnt/linux
Copié de ce site: https://www.linuxtricks.fr/wiki/chroot-sous-linux-explications-et-exemples