GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment utiliser Grub Rescue pour réparer l'échec du démarrage de Linux

Présentation

Le GRUB (Grand Unified Bootloader) est un outil pour démarrer et charger les noyaux du système d'exploitation et le chargeur de démarrage par défaut pour les systèmes basés sur le noyau Linux. Bien qu'il s'exécute en premier lorsqu'une machine est allumée, les utilisateurs réguliers voient rarement GRUB en action. Il fonctionne automatiquement et ne nécessite aucune intervention de l'utilisateur.

Cependant, lorsque vous essayez de démarrer un autre système d'exploitation avec Linux sur la même machine, le chargeur de démarrage de l'autre système peut écraser GRUB, ce qui empêche le système Linux de démarrer.

Cet article vous montrera comment résoudre l'échec du démarrage de Linux à l'aide des commandes GRUB Rescue et de l'outil Boot Repair.

Prérequis

  • Un compte avec des privilèges sudo.
  • Accès à la ligne de commande.

Problèmes de démarrage GRUB

La raison la plus courante pour laquelle GRUB ne démarre pas dans le système d'exploitation est que le chargeur de démarrage d'un autre système d'exploitation écrase la configuration de démarrage de GRUB. Le problème se produit lors d'une tentative de double démarrage avec une installation Linux existante. Une autre raison est la suppression accidentelle des fichiers de configuration GRUB.

Lorsque GRUB ne parvient pas à démarrer le système, l'invite GRUB Rescue s'affiche.

L'exemple ci-dessus montre que GRUB affiche l'erreur "pas de partition de ce type" avant d'afficher le grub rescue rapide. Une autre erreur GRUB courante est "système de fichiers inconnu", suivi de la même invite.

Parfois, l'écran peut afficher le grub invite uniquement.

Commandes de sauvetage GRUB

Vous trouverez ci-dessous la liste des commandes GRUB Rescue couramment utilisées. Utilisez les commandes dans les invites mentionnées dans la section précédente.

Commande Description Exemple
boot Démarrer le démarrage (raccourcis :F10 , CTRL + x ). La commande est émise sans arguments.
cat Écrire le contenu d'un fichier sur la sortie standard. cat (hd0,1)/boot/grub/grub.cfg
configfile Charger un fichier de configuration. configfile (hd0,1)/boot/grub/grub.cfg
initrd Chargez le fichier initrd.img. initrd (hd0,1)/initrd.img
insmod Charger un module. insmod (hd0,1)/boot/grub/normal.mod
loopback Monter un fichier image en tant que périphérique. loopback loop0 (hd0,1)/iso/image.iso
ls Afficher le contenu d'un répertoire ou d'une partition. ls (hd0,1)
lsmod Afficher une liste des modules chargés. La commande est émise sans arguments.
normal Activer le module normal. La commande est émise sans arguments.
search Recherchez des appareils. Option --file recherche des fichiers, --label recherche des libellés, --fs-uuid recherche l'UUID du système de fichiers. search -file [filename]
set Définissez une variable d'environnement. Si elle est émise sans argument, la commande imprime la liste de toutes les variables d'environnement et leurs valeurs. set [variable-name]=[value]

Correction de l'échec du démarrage

Ce didacticiel couvre deux façons de résoudre les problèmes de démarrage GRUB, à l'aide de l'invite GRUB Rescue , et l'outil de réparation de démarrage .

Via le terminal Grub

1. Utilisez la commande set sans arguments pour afficher les variables d'environnement :

set

L'exemple de sortie montre que GRUB est configuré pour démarrer à partir de (hd0,msdos3) partition :

2. La commande ls répertorie les partitions disponibles sur le disque.

ls

La sortie affiche la liste des partitions.

Utilisez le ls commande pour trouver la partition contenant le boot répertoire.

ls [partition-name]

L'exemple montre le boot répertoire dans le (hd0,msdos1) partitionner.

3. Définissez la partition de démarrage comme valeur de la root variable. L'exemple utilise la partition nommée (hd0,msdos1) .

set root=(hd0,msdos1)

4. Chargez le normal mode de démarrage.

insmod normal

5. Démarrez le normal mode de démarrage.

normal

Le normal Le mode vous permet d'émettre des commandes plus complexes.

6. Chargez le noyau Linux à l'aide de linux commande.

linux /boot/vmlinuz-4.2.0-16-generic root=/dev/sda1 ro

7. Émettez le boot commande.

boot

Le système démarre maintenant correctement.

Par l'image en direct

Une autre façon de résoudre vos problèmes de démarrage GRUB consiste à utiliser une image live Linux pour démarrer à partir d'un périphérique externe.

1. Téléchargez un programme d'installation Linux en direct. Cet exemple utilise l'image ISO d'Ubuntu 20.04.

2. Utilisez un outil tel que Etcher pour écrire l'image Linux sur une carte SD ou une clé USB.

3. Insérez le périphérique amorçable et démarrez l'ordinateur.

4. Sélectionnez Essayer Ubuntu sur l'écran d'accueil.

5. Lorsque le système en direct démarre, connectez-vous à Internet.

6. Ouvrez le terminal et tapez la commande suivante pour ajouter le référentiel de l'outil Boot Repair.

sudo add-apt-repository ppa:yannubuntu/boot-repair

Appuyez sur Entrée et attendez que le dépôt soit ajouté.

7. Mettez à jour les référentiels.

sudo apt update

8. Installez l'outil de réparation de démarrage.

sudo apt install boot-repair

9. Démarrez l'outil Boot Repair via le terminal.

boot-repair

10. Sélectionnez Réparation recommandée .

Attendez que l'outil ait fini de réparer le chargeur de démarrage.

Mise à jour du fichier de configuration GRUB

Lorsque le système démarre avec succès, assurez-vous que la configuration GRUB est à jour.

Exécutez cette commande :

update-grub

Réinstaller GRUB

Suivez les étapes ci-dessous pour réinstaller GRUB sur votre système Linux.

1. Montez la partition contenant l'installation du système d'exploitation. L'exemple monte le /dev/sda1 partitionner vers /mnt répertoire.

sudo mount /dev/sda1 /mnt

2. Liez le /dev , /dev/pts , /proc , et /sys répertoires vers les répertoires correspondants dans le /mnt dossier.

sudo mount --bind /dev /mnt/dev &&
sudo mount --bind /dev/pts /mnt/dev/pts &&
sudo mount --bind /proc /mnt/proc &&
sudo mount --bind /sys /mnt/sys

3. Installez GRUB.

sudo grub-install -root-directory=/mnt/ /dev/sda

4. Démontez les répertoires une fois l'installation terminée avec succès.

sudo umount /mnt/sys &&
sudo umount /mnt/proc &&
sudo umount /mnt/dev/pts &&
sudo umount /mnt/dev &&
sudo umount /mnt

Ubuntu
  1. Comment utiliser BusyBox sous Linux

  2. Comment j'utilise cron sous Linux

  3. Comment réparer l'erreur d'échec d'authentification Cron sous Linux ?

  4. Linux – Comment réparer/installer/réinstaller Grub ?

  5. Comment démarrer dans Arch Linux en utilisant Initramfs, dans le Grub d'Ubuntu ?

Réparer les échecs de démarrage Linux en mode de secours GRUB 2

Comment utiliser Ubuntu GRUB Bootloader Recovery pour résoudre les problèmes système

Comment utiliser la commande cd sous Linux

Comment utiliser une commande de fichier sous Linux

Comment utiliser la commande LDD sous Linux

Comment résoudre:erreur:pas de sauvetage grub de partition de ce type dans Ubuntu Linux