Ceci est une ancienne révision du document !
Chroot
Installer les paquets schroot debootstrap.
Préparer le répertoire où créer le chroot:
sudo mkdir buster sudo debootstrap --include=sudo,zsh,vim oldstable ./buster http://ftp.fr.debian.org/debian/
Commenter la ligne /tmp dans /etc/schroot/default/fstab.
Mettre dans /etc/schroot/default/copyfiles:
/etc/resolv.conf /etc/passwd /etc/shadow /etc/group /etc/hosts /etc/hostname
Éditer le fichier /etc/schroot/schroot.conf:
[buster] description=Debian Buster (oldstable) directory=/media/linux/chroots/buster users=philippe type=directory
Rentrer dans le chroot:
schroot -p -c buster
-p permet de propager les variables d'environnement dans le chroot.
Une fois dans le chroot, si on souhaite avoir un encodage UTF-8 correct:
sudo apt install locales sudo dpkg-reconfigure locales # Installer fr_FR.UTF-8
Cela fonctionne grâce à la variable d'environnement LANG qui vient du système hôte.
Attention, le /home est bindé sur celui de l'hôte.
Pour lister tous les schroots existants:
schroot -l
Système de fichiers en lecture seule
Pour éviter que les modifications apportées à un schroot soient persistées, il est possible de rajouter dans les configurations:
union-type=overlay
Dans ce cas, les modifications à persister doivent se faire dans le schroot source: correspondant à utiliser. Si on ne souhaite monter le /home de l'hôte dans le schroot, il est aussi possible de le retirer du fstab et de créer l'utilisateur dans le schroot source.