web-dev-qa-db-fra.com

14.04 La mise à niveau déclenche une défaillance de grub-pc

Mon problème commence par une mise à niveau d'Ubuntu 12.04 LTS à 14.02 LTS. Dans ce cadre, j'ai reçu plusieurs messages d'erreur indiquant que je ne pouvais pas supprimer les anciens noyaux.

Lors du premier démarrage en 14.02, j'ai vérifié que tout allait bien en exécutant Sudo apt-get autoremove, les mêmes erreurs sont apparues.

À la suite d’un guide en ligne, j’ai exécuté:

Sudo apt-get purge grub-common
Sudo apt-get install grub-pc

La première opération a réussi, en supprimant grub de mon pc. La deuxième opération a échoué avec les éléments suivants:

Creating config file /etc/default/grub with new version
Installing for i386-pc platform.
Installation finished. No error reported.
Generating grub configuration file ...
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Found linux image: /boot/vmlinuz-3.13.0-54-generic
Found initrd image: /boot/initrd.img-3.13.0-54-generic
Found linux image: /boot/vmlinuz-3.13.0-44-generic
Found initrd image: /boot/initrd.img-3.13.0-44-generic
Found linux image: /boot/vmlinuz-3.13.0-40-generic
Found initrd image: /boot/initrd.img-3.13.0-40-generic
Adding boot menu entry for EFI firmware configuration
cat: /video.lst: No such file or directory
/usr/sbin/grub-probe: error: failed to get canonical path of `'.
No path or device is specified.
Usage: grub-probe [OPTION...] [OPTION]... [PATH|DEVICE]
Try 'grub-probe --help' or 'grub-probe --usage' for more information.
dpkg: error processing package grub-pc (--configure):
 subprocess installed post-installation script returned error exit status 64
Errors were encountered while processing:
 grub-pc
E: Sub-process /usr/bin/dpkg returned an error code (1)

J'ai essayé de nombreux correctifs pour cela, dont la plupart sont documentés ici . J'ai créé un LiveCD avant de retirer grub-common, de sorte que j'ai accès à mon ancienne partition et que je peux mount et chroot.

Mais lorsque vous exécutez update-grub la même erreur apparaît, je ne peux pas non plus exécuter dpkg --configure -a sans cela.

J'ai utilisé boot-repair pour obtenir résumé de l'initialisation pour ma machine, qui est une installation à 2 disques durs avec double démarrage sur le premier lecteur (/dev/sda). Avec Windows sur /dev/sda1 et ma partition Ubuntu (également de démarrage) sur /dev/sda2.

Aidez-moi s'il vous plaît à résoudre ce problème et je vous promets de ne plus jamais toucher à mon installation Ubuntu. :-)

3
Rossiar

Je "élégamment résolu" mon problème en utilisant ce qui suit:

Sudo apt-get purge grub-pc grub-common
Sudo rm -r /etc/grub.d/
Sudo apt-get install grub-pc grub-common
Sudo grub-install /dev/sda
Sudo update-grub

La suppression du répertoire /etc/grub.d/ semblait s’être débarrassée de tous les fichiers 12.04 que je cachais, ce qui a permis à 14.04 d’installer Grub!

Bien que je recommande bien sûr de faire une sauvegarde de tout ce que vous êtes sur le point de supprimer.

5
Rossiar

Le moyen le plus simple d’utiliser Boot-Repair est de créer un disque contenant l’outil (par exemple, Boot-Repair-Disk, un disque démarrant automatiquement Boot-Repair), et d’amorcer dessus.

Personnellement, je préfère utiliser le ISO de disque d'amorçage

0
Jackspace