logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Ceci est une ancienne révision du document !


chroot

Introduction

Dans ce texte, nous voulons montrer comment utiliser la commande chroot pour pouvoir basculer vers votre système GNU/Linux, c'est-à-dire votre Debian préférée, à partir d'un autre système. Ce second système peut être un Live CD ou DVD. Un autre système à base Debian en dual boot sur votre ordi est tout aussi valable.

Règle général, il faut donc trouver un Live CD puis démarrez sor ordi avec. Comment mentionné, n'importe quel Live CD à base de Debian fera l'affaire : Knoppix, Ubuntu, Sidux, etc.

Attention, si votre système est en 64bits, il faudra démarrer avec un LiveCD en 64bits

Deuxième étape: montage, et chrootage

Voici en détail les opérations à effectuer pour monter et chrooter son système.

1. Identification de la partition à chrooter

Ouvrez un terminal et tapez :

su fdisk -l

Cette commande vous permet de vérifier quelle partition exactement est à “chrooter”, c'est-à-dire quelle est votre partition racine.
Dans le cas où l'on a un seul système présent sur son ordi, le résultat de la commande ci-dessus ressemblera à ceci :

 Device Boot      Start         End      Blocks   Id  System
 /dev/hda1   *           1        5624    45174748+  83  Linux
 /dev/hda2            5625        6110     3903795   82  Linux swap / Solaris
 /dev/hda3            6111       14946    70975170    5  Extended
 /dev/hda5            6111       14946    70975138+  8e  Linux LVM

La partition qui nous intéresse ici est /dev/hda1.

Création d'un répertoire où la partition système sera montée.

On commence donc par créer le répertoire chroot :

mkdir /mnt/chroot

Puis on monte notre partition système dans ce répertoire :

mount /dev/hda1 /mnt/chroot

Si vous avez une partition séparée pour /boot, il faut aussi la monter :

mount /dev/hdxy /mnt/chroot/boot
Il est d'ailleurs probable que dans ce cas, /dev/hda1 soit votre partition /boot et /dev/hda2 la /1) de votre système, soyez attentif à ce que vous faites.

Une fois que la partition système est montée, il faut monter les périphériques que le Live CD a trouvé :

mount --bind /dev/ /mnt/chroot/dev
mount -t proc /proc /mnt/chroot/proc

Votre système est alors prêt à être “chrooté” :

chroot /mnt/chroot

Il peut parfois être nécessaire, en fonction de votre système ou du Live CD à partir duquel vous avez démarré d'ajouter /bin/bash à la commande.

chroot /mnt/chroot /bin/bash

Une fois toutes ces opérations effectuées, vous êtes maintenant en tant que root sur votre système installé en dur.

Opérations sur votre système

Une fois votre chroot réalisé, vous pouvez donc apporter des modifications sur votre système.
Vous pouvez, par exemple, installer des paquets ou en enlever.
Bref, les commandes apt-get update, apt-get upgrade et autres sont opérationnelles.
Cela permet de pouvoir récupérer un système où suite à une mise à jour des paquets sont cassés et/ou buggés.
Avec la branche sid, il peut arriver à l'occasion (rarement quand même) qu'une mise à jour de paquets casse complètement le système à notre prochain démarrage. Un chroot nous évite alors une réinstallation du système.

Exemple détaillé de l'utilisation d'un chroot : réinstaller GRUB 2

Le paquet grub2 n'est pas indispensable, c'est ce que l'on appelle un “méta-paquet” il ne sert qu'à installer grub-pc et grub-common.
Éditez le fichier /etc/default/grub (uniquement si vous savez ce que vous faites!) selon vos besoin, et lancez ensuite la commande :

update-grub

Une fois le fichier /etc/grub/grub.cfg “réparé”, tapez :

grub-install /dev/hda

Nous supposons ici, puisqu'il s'agit d'un cas simple, que vous voulez installer GRUB sur le MBR du disque dur.
Si l'étape se passe mal, essayez avec la commande :

grub-install --root-directory=/mnt/chroot/ --recheck /dev/hda

Pour des problèmes plus sérieux, et si les commandes ci-dessus ne donnent pas de résultat sortons l'artillerie lourde !
D'abord installons, si ce n'est pas déjà fait os-prober :

aptitude install os-prober

Effacer votre grub.cfg pour repartir de zéro
Avant tout, faire une sauvegarde ainsi :

cp /boot/grub/grub.cfg /boot/grub/grub.bak)
rm /boot/grub/grub.cfg

Vérifiez que tous vos systèmes sont bien présents :

os-prober

Reconstruction du fichier /boot/grub/grub.cfg

grub-mkconfig -o /boot/grub/grub.cfg

Réinstallation de Grub2 dans le MBR avec les options de vérification

grub-install --root-directory=/mnt/chroot/ --recheck /dev/hda

Vérifiez que Grub2 est bien installé dans votre MBR :

dd if=/dev/sda bs=512 count=1 | strings
1+0 enregistrements lus
1+0 enregistrements écrits
512 octets (512 B) copiés, 1,788e-05 s, 28,6 MB/s
ZRr=
`|f
\|f1
GRUB
Geom
Hard Disk
Read
Error

C'est bon, il est présent !

Sortir du chroot

Pour sortir du chroot, il suffit de taper la commande :

exit

Une fois que vous êtes revenu à la console de base, il vous reste à démonter tous vos montages antérieurs :

umount /mnt/chroot/boot
umount /mnt/chroot/dev
umount /mnt/chroot/proc
umount /mnt/chroot

Vous pouvez alors redémarrer votre machine sur votre système installé en dur.

gimp en chroot

Liens et remerciement :

1)
racine
doc/systeme/chroot.1404338815.txt.gz · Dernière modification: 15/11/2014 09:00 (modification externe)

Pied de page des forums

Propulsé par FluxBB