Outils du site


ArchLinux - Chrooter Arch pour réparer

Tuto donné par Moi :-P

Ici sur le forum https://hyliatyde.space/forum/viewtopic.php?pid=43417#p43417


Quand on a fait une bêtise :-P, ou quand une mise à jour se passe mal, il peut être utile d'avoir à chrooter Arch pour la réparer.

Dans mon cas, j'ai eu à réinstaller grub et le noyau suite à un kernel panic au boot, mais bon, j'avais bidouillé, c'est de ma faute :-D

Je fais ce tuto dans le wiki pour ceux que ça intéresse, mais aussi je l'avoue dans un but plus personnel, que ce tuto me soit accessible de n'importe où, vu que ce n'est pas la première fois qu'une telle chose m'arrive :-D

Chrooter depuis un live ou une autre distribution installée sur le disque dur, du moment que c'est la même architecture, sinon ça ne fontionnera pas.

Il est utile de faire un petit

fdisk -l

Pour vérifier sur quelle partition se trouve exactement le système à chrooter. Celà permet aussi de repérer s'il y a une partition de boot afin de la monter dans le chroot.

Dans fdisk, la partition bootable est signalée par un astérisque *


Procédure

A partir du live, il peut être nécessaire de passer le clavier en azerty

loadkeys fr

C'est parti ! :-D

Monter le chroot

sudo mkdir /mnt/chroot

Monter les partitions

Si partition de boot, la monter

sudo mount /dev/sda? /mnt/chroot/boot

Monter la partition (ou les s'il y en a plusieurs, pour cette install je n'ai fait qu'une partition)

sudo mount /dev/sda6 /mnt/chroot

sda6 c'est dans mon cas, à remplacer suivant votre sortie de fdisk

Monter les périphériques

sudo mount --bind /dev/ /mnt/chroot/dev
sudo mount -t proc /proc /mnt/chroot/proc
sudo mount -t sysfs /sys /mnt/chroot/sys

Chrooter le système

sudo chroot /mnt/chroot

Et voilà vous êtes sur votre Arch :-)

Comme je ne crois que ce que je vois, je vérifie quand même d'être bien sur la bonne partition en faisant un petit ls de mon home :-P

Une fois dans le chroot, on est dans un terminal root, donc plus besoin de sudo


Réparer grub

Si Arch ne démarre plus, il peut être utile de réinstaller grub

grub-install --target=i386-pc --no-floppy --recheck /dev/sda

Je mets sur ce tuto les manips que j'ai eu à faire pour récupérer ma arch, mais vous pouvez avoir besoin de chrooter pour toute autre raison. Pour ma part, d'autres exemples viendront peut-être s'ajouter …..

Générer grub.cfg
grub-mkconfig -o /boot/grub/grub.cfg

Installer une version précédente du noyau

En espérant que, comme moi, vous gardez dans le cache de pacman les 3 dernières versions des paquets que vous installez, celui qui nous intéresse se trouve dans

/var/cache/pacman/pkg/

Sinon il vous faudra le trouver sur le net, le télécharger, le mettre dans un dossier et l'installer depuis ce dossier.

Dans mon cas

Se rendre dans le dossier où se trouve le paquet à réinstaller

cd /var/cache/pacman/pkg/

Repérer le nom exact du paquet avec ls, dans mon cas le noyau

Puis le réinstaller

pacman -U linux-x.x.x-x-xxx.pkg.tar.xz

Une fois les opérations de réparation terminées

Sortir du chroot

exit

Démonter les partitions et les périphériques

sudo umount  /dev/ /mnt/chroot/dev
sudo umount -t proc /proc /mnt/chroot/proc
sudo umount -t sysfs /sys /mnt/chroot/sys

Si nécessaire

sudo umount /dev/sda? /mnt/chroot/boot
umount /mnt/chroot

Et voilà vous être sorti du chroot, plus qu'à redémarrer en croisant les doigts :-D

Facile non ? ;-)