web-dev-qa-db-fra.com

Echec de la récupération Grub avec "Boot Repair" avec l'erreur "Système de fichiers inconnu"

Après une panne système (causée par un redémarrage brutal), mon Linux Ubuntu ne démarre pas, il s'affiche maintenant:

error: uknown filesystem
grub rescue>

Solutions que j'ai essayées:

grub rescue>ls
(hd0) (hd0,msdos5) (hd0) (hd0,msdos1)
grub rescue>ls (hd0,msdos5)
error: uknown filesystem
grub rescue>ls (hd0,msdos1)
error: uknown filesystem

Donc, je ne peux pas lister/trouver mon système de fichiers Linux ,

J'ai décidé d'essayer Boot Repair, installé sur Ubuntu Live USB, mais il n'y avait pas de bouton Réparation recommandée et il n'y avait pas de Options avancées. Il n'y avait qu'un seul bouton qui est Créer un résumé BootInfo

J'ai essayé BootRepair sur les versions live de la dernière Ubuntu et sur Linux Secure Remix, deux éditions LIVE cuites sur USB - résultat identique.

OS-Uninstaller sur Linux Secure Remix indique également qu'aucun système d'exploitation n'a été trouvé/installé.

J'ai essayé le même Linux Secure Remix sur un autre PC et il y a au moins Réparation recommandée. Donc, je pense que le problème est dans mon disque dur ou MBR.

Après quelques réponses, j'ai essayé

root@ubuntu:/home/ubuntu# Sudo fdisk -l

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xebd671ce

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048   302815231   151406592   83  Linux
/dev/sda2       302817278   312580095     4881409    5  Extended
/dev/sda5       302817280   312580095     4881408   82  Linux swap / Solaris

Disk /dev/sdb: 8021 MB, 8021606400 bytes
110 heads, 46 sectors/track, 3096 cylinders, total 15667200 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x04030201

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *       10392    15667199     7828404    b  W95 FAT32

root@ubuntu:/home/ubuntu# Sudo mount /dev/sda1 /mnt
mount: you must specify the filesystem type

root@ubuntu:/home/ubuntu# blkid
/dev/loop0: TYPE="squashfs" 
/dev/sda5: UUID="ce99d1c7-16fd-4b60-b0af-af6a14b8bdbe" TYPE="swap" 
/dev/sdb1: LABEL="DANAIL" UUID="4ED6-708D" TYPE="vfat" 

J'ai essayé différents types: ext3, ext4, vfat et auto, mais le résultat est le même pour tous les types:

root@ubuntu:/home/ubuntu# Sudo mount -t ext4 /dev/sda1 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/sda1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

root@ubuntu:/home/ubuntu# dmesg | tail
[ 2424.052221] SQUASHFS error: Can't find a SQUASHFS superblock on sda1
[ 2620.531816] EXT4-fs (sda1): VFS: Can't find ext4 filesystem
[ 2626.204025] EXT3-fs (sda1): error: can't find ext3 filesystem on dev sda1.
[ 2626.208650] EXT4-fs (sda1): VFS: Can't find ext4 filesystem
[ 2626.208938] FAT-fs (sda1): bogus number of reserved sectors
[ 2626.208943] FAT-fs (sda1): Can't find a valid FAT filesystem
[ 2626.209377] SQUASHFS error: Can't find a SQUASHFS superblock on sda1
[ 2635.692959] EXT2-fs (sda1): error: can't find an ext2 filesystem on dev sda1.
[ 2644.614887] FAT-fs (sda1): bogus number of reserved sectors
[ 2644.614894] FAT-fs (sda1): Can't find a valid FAT filesystem

root@ubuntu:/home/ubuntu# mount
/cow on / type overlayfs (rw)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
/dev/sdb1 on /cdrom type vfat (ro,noatime,fmask=0022,dmask=0022,codepage=cp437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
/dev/loop0 on /rofs type squashfs (ro,noatime)
none on /sys/fs/Fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
gvfsd-Fuse on /run/user/ubuntu/gvfs type Fuse.gvfsd-Fuse (rw,nosuid,nodev,user=ubuntu)

Enfin, j'ai trouvé que la solution consistait à exécuter fsck sur le système cassé /dev/sda1. Le problème est dans le système de fichiers, pas dans grub. C'est pourquoi grub ne peut pas voir le système de fichiers. Je vous remercie!

3
timer0x01

C'est une solution possible, mais il ne faut pas l'utiliser, de peur que votre partition racine ne soit davantage corrompue. Exécution de la commande: fsck -t ext4 /dev/sda1 Ce programme tente de rechercher et de réparer les erreurs sur un système de fichiers corrompu. Remplacez ext4 par le système de fichiers actuel, vous devez connaître le système de fichiers sinon la partition sera plus corrompue. Voir ce fil pour plus d'informations.


Même si cette question a une réponse, il existe un autre moyen de résoudre le problème qui a fonctionné pour moi. Les étapes sont expliquées dans cette douloureuse vidéo: http://www.youtube.com/watch?v=ZcbTgMKpVHQ . En bref, il va réinstaller complètement Grub2 au lieu de le réparer.

Parce que cette vidéo est si pénible à regarder, je vais énumérer les étapes ci-dessous (comme je devrais le faire indépendamment de la pénibilité de regarder la vidéo)

  1. Lancer une session en direct d'Ubuntu. La vidéo utilise un CD live alors que j’utilisais un live-usb. Je me suis assuré que le live-usb a la même version d'Ubuntu que celle que j'avais sur mon disque dur.
  2. Trouvez où votre partition racine a été montée. Dans la vidéo, l'utilisateur utilise Nautilus pour naviguer dans chaque lecteur monté. Il était monté avec une longue chaîne de chiffres et de caractères. Si tel est le cas, suivez les étapes suivantes pour remonter la partition. Sinon, passez à l'étape 5.
  3. Affichez le terminal avec ctrl + alt + T et utilisez la commande mount pour rechercher le nom de la partition.
  4. Montez la partition. Créez un nouveau dossier dans votre dossier multimédia. Sudo mkdir /media/ubuntu. Ensuite, montez simplement votre partition sur ce dossier. Sudo mount /dev/sdxx /media/ubuntuxx sur sdxx est déterminé à l'étape 3.
  5. Liez les répertoires suivants du répertoire racine de votre live cd/usb à celui de votre répertoire racine sur votre version d’Ubuntu. Les répertoires sont les devproc et sys. Faites-le avec les commandes suivantes:

    Sudo mount --bind /dev /media/ubuntu/dev
    Sudo mount --bind /sys /media/ubuntu/sys
    Sudo mount --bind /proc /media/ubuntu/proc
    
  6. Changez le répertoire racine en celui de votre partition Ubuntu. Sudo chroot /media/ubuntu/

  7. Cela fait, installer Grub2 à nouveau l’installera dans le répertoire racine de votre distribution d’ubuntu et non dans celui du cd/usb en direct. Alors allez-y et exécutez Sudo grub-install /dev/sdx

Et c’est comment réparer grub en utilisant un live-cd/usb. Cette méthode a été développée par l'utilisateur youtube crazytechzone.

2
Nil

Votre sortie parted -l indique clairement que votre partition de démarrage est/dev/sda1. Cela pourrait ne pas être reconnu par certaines applications de l'interface graphique de Nice pour réparer grub.

La solution la plus simple consiste à réinstaller grub via une ligne de commande. Suivez les commandes données sur cette page , et vous devriez être opérationnel en un rien de temps. N'oubliez pas d'utiliser /dev/sda1 partout où la page utilise /dev/sdax.

1
Bhavin Doshi