66 votes

Sauvetage de Grub - erreur : système de fichiers inconnu

J'ai configuré un système multiboot. Le système a trois disques. Multiboot est configuré avec Windows XP, Windows 7 et Ubuntu - tous sur le premier disque. J'avais beaucoup d'espace non partitionné sur le disque et je le réservais pour ajouter d'autres systèmes d'exploitation et pour y stocker des fichiers à l'avenir.

Un jour, j'ai téléchargé Partition Wizard et j'ai créé une partition NTFS logique depuis Windows 7, il restait toujours un peu d'espace non partitionné. Tout fonctionnait bien, jusqu'à ce que je redémarre l'ordinateur quelques jours plus tard.

Maintenant j'obtiens:

erreur : système de fichiers inconnu.
grub rescue>

Tout d'abord, j'ai été surpris de ne pas trouver de commande d'aide, en essayant :

aide, ?, man, --help, -h, bash, cmd, etc.

Je suis maintenant coincé avec un système non amorçable. J'ai commencé à rechercher le problème et j'ai découvert que les gens recommandent généralement de démarrer à partir d'un Live CD et de résoudre le problème à partir de là. Y a-t-il un moyen de résoudre ce problème depuis grub rescue sans avoir besoin d'un Live CD?

MISE À JOUR

En suivant les étapes de Persist commands typed to GRUB rescue, j'ai pu démarrer jusqu'à l'invite initramfs. Mais je n'ai pas pu aller plus loin que ça.

Jusqu'à présent, en lisant le manuel sur grub rescue, j'ai pu voir mes disques et mes partitions en utilisant la commande ls. Pour le premier disque dur, je vois ce qui suit :
(hd0) (hd0,msdos6) (hd0,msdos5) (hd0,msdos2) (hd0,msdos1)

Je sais maintenant que (hd0,msdos6) contient Linux, puisque ls (hd0,msdos6)/ liste des répertoires. Les autres donnent "erreur : système de fichiers inconnu."

MISE À JOUR 2

Après les commandes suivantes, je parviens désormais au menu de démarrage et je peux démarrer sous Windows 7 et Ubuntu, mais après le redémarrage, je dois répéter ces étapes.

ls
ls (hd0,msdos6)/
set root=(hd0,msdos6)
ls /
set prefix=(hd0,msdos6)/boot/grub
insmod /boot/grub/linux.mod
normal

MISE À JOUR 3

Merci Shashank Singh, avec vos instructions j'ai simplifié mes étapes à ce qui suit. J'ai appris de vous que je peux remplacer msdos6 par simplement 6 et que je peux simplement faire insmod normal au lieu de insmod /boot/grub/linux.mod. Maintenant, je dois juste trouver comment sauvegarder ces paramètres depuis grub lui-même, sans démarrer aucun système d'exploitation.

set root=(hd0,6)
set prefix=(hd0,6)/boot/grub
insmod normal
normal

MISE À JOUR 4

Eh bien, il semblerait qu'il soit nécessaire de démarrer sous Linux. Après avoir démarré sous Ubuntu, j'ai effectué les étapes suivantes décrites dans le manuel :

sudo update-grub
sudo grub-install /dev/sda

Cela n'a pas résolu le problème. J'obtiens toujours l'invite de récupération de grub. Que dois-je faire pour le réparer définitivement?

J'ai également appris que les numéros de disque comme hd0 doivent être traduits en lettres de disque comme /dev/sda pour certaines commandes. hd1 serait sdb, hd2 serait sdc, et ainsi de suite. Les partitions répertoriées dans grub comme (hd0,msdos6) seraient traduites en /dev/sda6.

MISE À JOUR 5

Je n'ai pas compris pourquoi ce qui suit n'a pas résolu grub :

sudo update-grub
sudo grub-install /dev/sda

Alors j'ai téléchargé boot-repair sur la base d'une réponse du post https://help.ubuntu.com/community/Boot-Repair. Cela a semblé fonctionner après avoir choisi l'option "Réparation recommandée (répare la plupart des problèmes fréquents)".

0voto

user84246 Points 21

Une autre cause du problème est que le système de fichiers sur le lecteur de démarrage peut être planté dans des cas rares. Comme mentionné dans d'autres réponses, j'utilise initialement la commande ls pour lister tous les lecteurs/partitions dans l'invite de secours GRUB, mais tous signalent une erreur de système de fichiers inconnu. J'ai finalement résolu le problème sur Ubuntu 16.04 (Xenial Xerus) en récupérant le système de fichiers comme suit :

  1. Démarrer à partir d'une clé USB (essayer Ubuntu sans l'installer)

  2. Trouver le lecteur de démarrage (vérifier la capacité du lecteur ou faire le fsck sur chaque partition) :

    sudo fdisk -l
  3. Récupérer le système de fichiers :

    sudo fsck /dev/sdb1
  4. Après que le système de fichiers soit réparé et propre, redémarrer la machine depuis le lecteur de démarrage.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X