Wiki Ordunix

Linux, FreeBSD, macOS, Windows et Histoire Informatique

Outils pour utilisateurs

Outils du site


wiki:os:gnu_linux:tutos:admin:chroot

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
wiki:os:gnu_linux:tutos:admin:chroot [2025/09/16 15:14] Thibault Seguinwiki:os:gnu_linux:tutos:admin:chroot [2025/09/16 16:39] (Version actuelle) – [Monter votre chroot] Thibault Seguin
Ligne 2: Ligne 2:
 **Chroot** est à la fois un //appel système// et une //commande Unix// du même nom qui permet de changer de répertoire racine ''/'', d'ailleurs la commande chroot signifie //change root// (ch = change). Cette commande a été ajouté en 1979 à **Unix version 7** des laboratoires **Bell Labs** de l'entreprise **AT&T**. Cette commande a des similitudes avec des conteneurs tel que **LXC** avec tout de même une isolation beaucoup moins forte, raison pour laquelle a été créé les conteneurs. **Chroot** est à la fois un //appel système// et une //commande Unix// du même nom qui permet de changer de répertoire racine ''/'', d'ailleurs la commande chroot signifie //change root// (ch = change). Cette commande a été ajouté en 1979 à **Unix version 7** des laboratoires **Bell Labs** de l'entreprise **AT&T**. Cette commande a des similitudes avec des conteneurs tel que **LXC** avec tout de même une isolation beaucoup moins forte, raison pour laquelle a été créé les conteneurs.
  
-Chroot permet par exemple de réparer un système Linux cassé, par exemple par le  biais d'un live USB Linux. Cette commande se trouve par défaut dans le paquets **coreutils** de GNU mais également sous **BusyBox**.+Chroot permet par exemple de réparer un système Linux cassé, par exemple par le  biais d'un live USB Linux. Cette commande se trouve par défaut dans le paquets **coreutils** de GNU mais également sous **BusyBox** pour les systèmes embarqués. 
 + 
 +Dans la suite de ce tuto nous allons utiliser la commande [[wiki:os:gnu_linux:tutos:admin:sudo]] 
 + 
 +===== Utilisation de la commande chroot sous Linux ===== 
 +Comme mentionné précédemment vous pouvez utiliser un live USB Linux pour réparer un système Linux cassé sur votre ordinateur ou bien même avoir un second système Linux complet hors noyau donc l'espace utilisateur au sein d'un système Linux sain (comme LXC). 
 + 
 +Pour commencer créer un répertoire dans ''/mnt'' sur le système hôte : 
 +<code user>sudo mkdir /mnt/chroot</code>  
 + 
 +==== Monter votre chroot ==== 
 + 
 +Monter la partition racine ''/'' du système que vous voulez chrooter : 
 +<code user>sudo mount /dev/sda1 /mnt/chroot/</code>''sda1'' est à remplacer par votre média de stockage. 
 + 
 +Monter les répertoires ''/dev'' et ''/proc'' indispensable pour un chroot : 
 +<code user>sudo mount --bind /dev /mnt/chroot/dev</code> 
 +<code user>sudo mount -t proc /dev /mnt/chroot/proc</code> 
 + 
 +Vous pouvez également monter les répertoires ''/sys'' et ''/run''
 +<code user>sudo mount -t sysfs /sys /mnt/chroot/sys</code> 
 +<code user>sudo mount --bind /run /mnt/chroot/run</code> 
 + 
 +<note>Sur un système Linux **UEFI** il peut-être nécessaire de monter : <code user>sudo mount -t efivarfs none /sys/firmware/efi/efivars</code><code user>sudo mount -t /dev/<partition_EFI> /boot/efi</code></note> 
 + 
 +Si vous souhaitez également avoir accès à internet dans votre chroot : 
 +<code user>sudo cp /etc/resolv.conf /mnt/chroot/etc/resolv.conf</code> 
 + 
 +Vous pouvez désormais changer de répertoire ''/'' et aller dans celui de votre chroot : 
 +<code user>sudo chroot /mnt/chroot</code>si la commande échoue, tapez : 
 +<code user>sudo chroot /mnt/chroot /bin/bash</code> 
 + 
 +Maintenant que vous êtes dans votre chroot vous pouvez en sortir avec cette commande : 
 +<code user>exit</code> 
 + 
 +==== Démonter votre chroot ==== 
 +Démonter les répertoires : 
 +<code user>sudo umount /mnt/chroot/dev</code> 
 +<code user>sudo umount /mnt/chroot/proc</code> 
 +<code user>sudo umount /mnt/chroot/sys</code> 
 +<code user>sudo umount /mnt/chroot/run</code> 
 + 
 +Démonter le chroot lui même : 
 +<code user>sudo umount /mnt/chroot</code> 
 + 
 +<note>Vous pouvez également démonter votre chroot en une seule commande : <code user>sudo umount -R /mnt/chroot</code></note> 
 + 
 + 
 + 
wiki/os/gnu_linux/tutos/admin/chroot.1758035694.txt.gz · Dernière modification : de Thibault Seguin