Trucs:Installation d'un système Linux en chroot complet
Modifié par Mike-m
Installation d'un système Linux en chroot
Au préalable assurez vous d'avoir un emplacement pour installer le système chrooté. # mkdir /chroot
. Dans la suite nous prenons le répertoire /chroot comme racine. Notez qu'il ne faut pas installer plus d'un système dans un répertoire.
Nous utilisons un franglophone : chrooter, qui est le fait de changer de racine, ce dernier contenant un système n'ayant aucune liaison avec le système principal (cf. Utiliser chroot).
Debian
# debootstrap sarge /chroot/ http://ftp.fr.debian.org/debian/
Remarque : sarge peut être remplacé par sid, testing ( ou même encore woody )
Cette commande va vous permettre d'installer une debian sarge dans le répertoire /chroot
en utilisant la liste des packages/sources contenue dans http://ftp.fr.debian.org/debian.
# mount -t proc none /chroot/proc
Ceci permet de monter le système de fichiers proc pour que les informations du kernel soient accessible dans l'environnement chrooté. Cette action est oubliée au redémarrage de la machine, pour la retenir il faut éditer le fichier /etc/fstab : # echo "proc-chroot /chroot/proc proc none 0 0" >> /etc/fstab
.
# cp -L /etc/hosts /chroot/etc/hosts
cp -L /etc/resolv.conf /chroot/etc/resolv.conf
Remarque : L'option -L permet de ne pas suivre un lien symbolique
Copiez ces fichiers pour avoir les informations des hôtes et des DNS dans l'environnement chrooté.
# chroot /chroot /bin/bash
chroot # apt-setup
A partir de ce point votre système Debian est fonctionnel. La commande apt-setup
vous permet de rajouter un dépôt Debian dans /etc/apt/sources.list
. Vous pouvez maintenant installer quelques logiciels utiles, par exemple : vim, mc ... chroot # aptitude install vim mc
.
Mandriva
Note : la création d'un chroot Mandriva peut uniquement être fait sous Mandriva. Si vous connaissez une méthode pour l'installer sur une autre distribution, n'hésitez pas à le faire remarquer.
# urpmi basesystem --root /chroot
Cette commande va installer un système de base Mandriva (votre version actuelle) dans le répertoire /chroot
.
Montez le système de fichiers proc pour obtenir les informations du kernel dans l'environnement chrooté : # mount -t proc none /chroot/proc
. Vous pouvez éditer /etc/fstab pour monter automatiquement proc dans l'environnement chroot au lancement de votre système principal : # echo "proc-chroot /chroot/proc proc none 0 0" >> /etc/fstab
.
Copiez les informations DNS : # cp -L /etc/resolv.conf /chroot/etc/resolv.conf
.
Installez urpmi dans l'environnement chrooté : # urmpi --root /chroot urpmi
.
Vous pouvez accéder à votre environnement : # chroot /chroot /bin/bash
. Lancez urpmi.addmedia pour ajouter une nouvelle source de rpm pour urpmi, par exemple : chroot # urpmi.addmedia main \
ftp://ftp.free.fr/pub/Distributions_Linux/MandrivaLinux/official/2006.0/i586/media/main with \
media_info/hdlist.cz
et utilisez urpmi pour installer vos logiciels.
Gentoo
Commencez par vous rende dans le répertoire d'installation, dans notre cas /chroot. # cd /chroot
.
Afin d'installer Gentoo, vous devez choisir une archive de stage 3 correspondant à votre architecture depuis le miroir suivant : ovh.net/gentoo-distfiles/releases/ (nous prenons à titre d'exemple l'architecture x86). Ensuite entrez dans le répertoire current et optionnellement dans un répertoire d'une sous-architecture. Dans le cas de l'architecture x86, entrez dans athlon-xp si vous avez un processeur AMD. Enfin téléchargez le fichier correspondant au stage 3.
Ceci fait, décompressez cette archive # tar xjpf stage*bz2
. En prenant note du bug #101962 lancez la commande # chmod 0755 /chroot
si vous avez pris l'une des archive stage3-athlon-xp-2005.1.tar.bz2, stage3-pentium3-2005.1.tar.bz2 ou stage3-pentium4-2005.1.tar.bz2.
Vous devez maintenant installer Portage, le système de package de Gentoo. Pour cela téléchargez le fichier portage-latest.tar.bz2 et décompressez le dans /chroot/usr # tar xjf portage-latest.tar.bz2 -C /chroot/usr
.
Le système est installé, vous pouvez encore recopier les informations des hôtes et du réseau, ainsi que de monter les informations du kernel (proc).
# cp -L /etc/hosts /chroot/etc/hosts
- cp -L /etc/resolv.conf /chroot/etc/resolv.conf
- mount -t proc none /chroot/proc
Pour automatiser le montage de proc, complétez votre fichier /etc/fstab de la manière suivante :
# echo "proc-chroot /chroot/proc proc none 0 0" >> /etc/fstab
Enfin, il ne vous reste plus qu'à vous loger dans votre nouvel environnement Gentoo et de lancer encore quelques dernières commandes, notamment pour générer les variables d'environnement, les prendre en compte et mettre à jour l'arbre de Portage.
# chroot /chroot /bin/bash
- env-update
(...)
- source /etc/profile
- emerge --sync
(...)
Si tout c'est bien passé, vous allez pouvoir compiler vos premiers logiciels. emerge --search|-s <package>
pour chercher et emerge <package>
pour installer.
Références
Debian : http://www.debian.org/doc/manuals/reference/ch-tips.en.html#s-chroot
Mandriva : http://qa.mandrivalinux.com/twiki/bin/view/Main/ChrootHowTo
Gentoo : http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1#book_part1_chap6
(Special thanks à misc, Thauvin Olivier (Nanar) et bien sûr Mosssieeu François Pons pour la version Mandrake :)