Traduction(s): English - Français - Español

(!) ?Discussion


chroot est une commande des systèmes d'exploitation UNIX permettant de changer le répertoire racine d'un processus de la machine hôte. (...En savoir plus)

Installation de base

Construire un «chroot» est très facile sous Debian.

Il faut :

 aptitude install binutils debootstrap

 mkdir -p /var/chroot/etch 

 debootstrap --arch i386 etch /var/chroot/etch

Conseil : avant de rentrer de votre chroot tout neuf et de le modifier, il peut être pertinent d'en effectuer une sauvegarde (une archive .tar.gz par exemple). Le chroot étant souvent destiné à expérimenter, il n'est pas rare de vouloir repartir de zéro après une mauvaise manipulation. Si c'est le cas vous n'aurez alors qu'à désarchiver votre sauvegarde et vous gagnerez du temps.

  chroot /var/chroot/etch

La taille d'un chroot

L'espace disque nécessaire constaté est le suivant :

Version

Taille

slink

80 Mo (archi i386 ? à confirmer)

potato

95 Mo (archi i386 ? à confirmer)

woody

100 Mo (archi i386 ? à confirmer)

sarge

138 Mo (archi i386 ? à confirmer)

squeeze

-

wheezy

233 Mo (amd64)

Configuration

En géneral, il est nécessaire de créer/modifier des points de configuration essentiels (liste non exhaustive)

La configuration d'un chroot étant relativement statique et très spécifique, on peut éventuellement se dispenser des commandes de «haut-niveau» et modifier directement les fichiers concernés.

  /etc/passwd
  /etc/groups

  /etc/hosts
  /etc/resolv.conf

  /etc/fstab

Montage des pseudos systèmes de fichiers

/proc

 proc on /proc type proc (rw)
 sysfs on /sys type sysfs (rw)

/dev/pts

D'après http://lists.debian.org/debian-user-french/2008/05/msg00351.html

Dans ce cas, sur le système principal, lancer la commande:

 mount --bind /dev/pts /var/chroot/etch/dev/pts

Automatiser les montages

Plus généralement, et pour reprendre ce qui a été vu précédement, le fichier /etc/fstab du système principal pourrait ressembler à ça:

# cat /etc/fstab | grep chroot
/dev            /var/chroot/etch/dev        auto    bind    0       0
/dev/pts        /var/chroot/etch/dev/pts    auto    bind    0       0
/proc           /var/chroot/etch/proc       auto    bind    0       0

Le mount sur le système principal serait:

# mount | grep chroot
/dev on /var/chroot/etch/dev type none (rw,bind)
/dev/pts on /var/chroot/etch/dev/pts type none (rw,bind)
/proc on /var/chroot/etch/proc type none (rw,bind)

Ajout/suppression de paquets

  aptitude install deborphan

  deborphan -a

  aptitude remove --purge telnet pppconfig manpages ipchains ...

liste complémentaire svgalibg1 whiptail

  aptitude install emacs21 sudo locales mc

Utilisation(s)

Plusieurs utilisations sont envisageables, par exemple :

Liens externes