J'ai fait une chose idiote ... J'ai oublié qu'Ubuntu 10.04 (Lucid Lynx) est passé à GRUB 2, qui met une tonne de fichiers * .mod (modules du noyau) dans /boot/grub
. Je pensais que c'étaient des fichiers de bandes sonores qui y avaient été placés à tort, et je les ai déplacés. Inutile de dire que le prochain redémarrage était traumatisant. On me présenta quelque chose dont je ne me souvenais pas avoir jamais vu… une invite de «sauvetage de grub».
Avec l'aide de l' erreur GRUB Correction: "erreur: système de fichiers inconnu" cependant, j'ai pu récupérer ...
- J'ai découvert que le sauvetage de GRUB ne comporte pas de commandes "cd", "cp" ou autres, sauf sa propre variante de "ls".
Donc, je devais d'abord trouver la partition avec le
/boot
répertoire contenant levmlinuz
fichier et d'autres fichiers d'image de démarrage ... (approximation à partir de la mémoire des tentatives infructueuses, ainsi que des lignes vides pour plus de clarté, ajoutée le 2014-07-10 par docsalvage)grub rescue> ls (hd0,4) (hd0,3) (hd0,2) (hd0,1) grub rescue> ls (hd0,4)/boot ... some kind of 'not found' message grub rescue> ls (hd0,3)/boot ... some kind of 'not found' message grub rescue> ls (hd0,2)/boot ... grub ... initrd.img-2.6.32-33-generic ... vmlinuz-2.6.32-33-generic
J'ai trouvé un
/boot
répertoire contenant levmlinuz
fichiervmlinuz-2.6.32-33-generic
sur la partition(hd0,2)
.Ensuite, j'ai démarré manuellement à partir de l'invite 'sauvetage de grub>'. Les commandes suivantes vont ...
- Configurez le
root
pour utiliser le/boot
répertoire sur la partition(hd0,2)
. - Charger le module de noyau
linux
. - Définissez ce module pour utiliser l'image du noyau
vmlinuz-2.6.32-33-generic
. - Définissez initrd (initialize RAM Disk) pour utiliser l'image
initrd.img-2.6.32-33-generic
. - Démarrer Linux.
- Configurez le
grub rescue> set root=(hd0,2)/boot grub rescue> insmod linux grub rescue> linux (hd0,2)/boot/vmlinuz-2.6.32-33-generic root=/dev/sda2 grub rescue> initrd (hd0,2)/boot/initrd.img-2.6.32-33-generic grub rescue> boot
Cela démarre et plante à l'invite BusyBox qui a quelques commandes de système de fichiers rudimentaires.
Ensuite, j'ai déplacé les fichiers * .mod dans le
/boot/grub
répertoire ...busybox> cd /boot busybox> mv mod/* grub busybox> reboot
Le redémarrage a réussi, mais c'était beaucoup de travail.
Y a-t-il un moyen plus facile?
grub> linux (hd0,X)/boot/vmlinuz-a.b.c-d-generic root=/dev/sdaX
où X
est la partition avec /boot
, a.b.c-d
est la version du noyau. Ensuite, mon système a bien démarré! Merci!