Après un reboot, grub ne veut plus lancer le kernel.
Cause possible : coupure électrique, mise à jour mal terminée,…
ici, par exemple, grub indique une erreur de type filesystem inconnu :
Le système Linux est un Ubuntu 14.x.
Les disques systèmes sont en RAID 1 (miroir). Que ce soit en RAID matériel ou en RAID logiciel, Ubuntu voit les 2 disques physiques (ex : sda et sdb) et voit en plus les volumes RAID (dm…)
Toutes les manips indiquées dans la documentation ici ont échouées.
Voici la procédure qui a fonctionnée :
apt-get remove --purge grub-common grub2-common grub-pc grub-pc-bin
apt-get install grub-pc
redémarrer l'ordinateur avec un LiveCD
Monter le disque local
regarder le fichier /etc/fstab et noter le point de montage physique de la partition racine /
par exemple : /dev/mapper/isw_xxxxxxVolume0p1
Donc on se retrouve avec l'écran suivant :
la commande ls liste le spartitions vues par grub, ex :
(hd0) (hd0,msdos1) (hd0,msdos5)
la commande set indique l'emplacement de boot grub et du disque d'installation
prefix=(hd0,msdos1)/boot/grub root=(hd0,msdos1)
Pour connaitre les versions du kernel installées sur la machine, faire :
ls (hd0,msdos1)/boot
Puis (dans notre cas, le kernel 3.13.0-43 est la dernière version listée précédemment) :
insmod linux linux /boot/vmlinuz-3.13.0-43-generic root=/dev/mapper/isw_xxxxxxVolume0p1 quiet initrd /boot/initrd.img-3.13.0-43-generic boot
Une fois loggué sur sa session, regénérer un fichier de configuration grub propre :
$ sudo bash # update-grub # grub-install --force /dev/mapper/isw_xxxxxxVolume0p1