La mise à niveau du 13.10 au 14.04 a cassé Grub


11

J'ai un double démarrage Ubuntu + Windows 8 sur un système UEFI. Tout allait bien jusqu'à ce que je passe à Ubuntu 14.04 à partir de 13.10.

Maintenant, ce que j'obtiens lorsque je démarre le PC est un écran de sauvetage grub comme celui-ci avec ce qui suit:

Failed to open \EFI\Microsoft\Boot\grubx64.efi - 800000000000000E
Failed to load image
Failed to open \EFI\Microsoft\Boot\MokManager.efi.efi - 800000000000000E
Failed to load image
Welcome to GRUB!

error: symbol 'grub_term_highlight_color' not found.
grub rescue> 

L'utilisation de la réparation de démarrage à partir d'un CD live (13.10 ou 14.10) signale qu'une erreur s'est produite et crée ce rapport: http://paste2.org/Y8mDwa0M

(La réparation de démarrage indique qu'il installera des packages à partir d'Ubuntu 13.10)

mais rien ne change.

Si j'appuie sur f12 au démarrage, j'arrive à un écran de bios (menu de démarrage) où je peux choisir parmi hdd, usb, lecteur dvd et si je clique sur le disque dur, j'ai trois choix:

Sélectionnez un périphérique à démarrer:

Windows Boot Manager 
ubuntu
Ubuntu

L'option Windows me ramène à la rescousse grub.

Avec les deux autres options, j'arrive à un menu grub où je peux démarrer Ubuntu mais l'option de fenêtre ne fonctionne pas

Je ne sais plus quoi faire

Mise à jour :

Merci pour les réponses, j'ai en fait essayé tous (réinstallé grub plus de 5 fois à partir de différentes versions d'Ubuntu sur des clés USB et utilisé beaucoup de fois la réparation de démarrage mais rien n'a fonctionné)

À la fin, j'utilise rEFInd ( http://www.rodsbooks.com/refind/getting.html ) qui me permet d'accéder à grub à partir duquel je peux démarrer Ubuntu (mais pas Windows) et démarrer Windows seul en utilisant le menu rEFInd.

Mais bien sûr, ce n'est pas la solution idéale

Mise à jour 2:

Je n'ai qu'un seul disque:

entrez la description de l'image ici

Mise à jour 3:

c'est l'erreur qui apparaît lorsque j'essaie d'installer grub ou d'exécuter grub-install:

Installing for i386-pc platform. 
grub-install: Warning: This GPT partition label has no BIOS Boot Partition, the embed is not possible. 
grub-install: Warning: This embed is not possible. GRUB can only be installed in this configuration using blocklist. The blocklist however, are not reliable and it is not recommended to use ..
Installation completed, no errors reported.
Generating grub configuration file ... 
Found linux image: / boot/vmlinuz-3.13.0-24-generic 
Found initrd image: / boot/initrd.img-3.13.0-24-generic 
Found linux image: / boot/vmlinuz-3.11.0-19-generic 
Found initrd image: / boot/initrd.img-3.11.0-19-generic 
Found linux image: / boot/vmlinuz-3.11.0-7-generic 
Found initrd image: / boot/initrd.img-3.11.0-7-generic 
Found linux image: / boot/vmlinuz-3.11.0-5-generic 
Found initrd image: / boot/initrd.img-3.11.0-5-generic 
Found linux image: / boot/vmlinuz-3.11.0-4-generic 
Found initrd image: / boot/initrd.img-3.11.0-4-generic 
Found linux image: / boot/vmlinuz-3.11.0-3-generic 
Found initrd image: / boot/initrd.img-3.11.0-3-generic 
Found linux image: / boot/vmlinuz-3.11.0-2-generic 
Found initrd image: / boot/initrd.img-3.11.0-2-generic 
Found Windows Boot Manager on / dev/sda2 @ / EFI / Microsoft / Boot / Bootmgfw.efi 
Adding boot menu entry for the EFI firmware configuration 
done

(traduit de l'italien)



J'ai essayé ces commandes mais je suis bloqué sur chroot. J'obtiens une erreur: "chroot: impossible d'exécuter la commande` / bin / bash ': erreur de format Exec

Vous avez la même erreur en allant au 14.04, cela m'aide: wiki.ubuntuusers.de/GRUB_2/Reparatur , presque la même que la réponse de freeseek

1
@ Larry Voir le message ci-dessous, la méthode 3 # 1 est votre problème, vous ne pouvez pas utiliser une racine de changement 32 bits pour réparer un système 64 bits.
eyoung100

Réponses:


7

Je n'ai pas testé cela avec un grub cassé en 14.04 mais je n'ai jamais eu de problème en utilisant ces instructions:
https://wiki.ubuntu.com/Grub2#Recover

Tout d'abord, vous devez démarrer votre système à partir d'un CD live ou d'une clé USB. Puis

" MÉTHODE 3 - CHROOT

Cette méthode d'installation utilise la commande chroot pour accéder aux fichiers du système cassé. Une fois la commande chroot émise, le LiveCD traite le / du système défectueux comme le sien. Les commandes exécutées dans un environnement chroot affecteront les systèmes de fichiers des systèmes cassés et non ceux du LiveCD.

1) Démarrez sur le bureau LiveCD (Ubuntu 9.10 ou version ultérieure). Veuillez noter que le Live CD doit être le même que le système que vous réparez - 32 bits ou 64 bits (sinon, le chroot échouera).

2) Ouvrez un terminal (Applications> Accessoires> Terminal).

3) Déterminez votre partition système normale - (le commutateur est un "L" minuscule)

sudo fdisk -l

Si vous n'êtes pas sûr, exécutez

df -Th  

Recherchez la bonne taille de disque et le format ext3 ou ext4.

4) Montez votre partition système normale:

Remplacez la partition correcte: sda1, sdb5, etc.

sudo mount /dev/sdXX /mnt  

Exemple: sudo mount / dev / sda1 / mnt

5) Uniquement si vous avez une partition de démarrage distincte: sdYY est la désignation de la partition / boot (par exemple sdb3)

montage sudo / dev / sdYY / mnt / boot 
6) Montez les systèmes de fichiers virtuels critiques:
montage sudo --bind / dev / mnt / dev
montage sudo --bind / dev / pts / mnt / dev / pts
montage sudo --bind / proc / mnt / proc
montage sudo --bind / sys / mnt / sys 
7) Entrez dans votre appareil système normal:

sudo chroot / mnt 

8) S'il n'y a pas /boot/grub/grub.cfg ou si ce n'est pas correct, créez-en un en utilisant

update-grub 

9) Réinstallez GRUB 2:

Remplacez le bon périphérique - sda, sdb, etc. Ne spécifiez pas de numéro de partition.

grub-install / dev / sdX 

10) Vérifiez l'installation (utilisez le bon périphérique, par exemple sda. Ne spécifiez pas de partition):

sudo grub-install --recheck / dev / sdX 

11) Quitter chroot: CTRL-D sur le clavier

12) Démontez les systèmes de fichiers virtuels:

sudo umount / mnt / dev / pts
sudo umount / mnt / dev
sudo umount / mnt / proc
sudo umount / mnt / sys 

13) Si vous avez monté une partition / boot distincte:

sudo umount / mnt / boot 

14) Démontez le répertoire / usr du LiveCD:

sudo umount / mnt / usr 

15) Démontez le dernier appareil:

sudo umount / mnt 

16) Redémarrez.

redémarrage sudo 
"

Ce sont également d'autres façons de réparer grub: Comment puis-je réparer grub? (Comment récupérer Ubuntu après l'installation de Windows?)


1
Les étapes 3,4 et 9 ont fait le travail pour moi. Merci
ezdazuzena

1
la réparation de démarrage a lamentablement échoué - mais cela a fonctionné parfaitement pour moi
Jon Skarpeteig

2

Eu la même erreur "symbol 'grub_term_highlight_color' not found", coincé lors du sauvetage de Grub. Essai de réparation de démarrage (option recommandée), mais n'a pas fonctionné!

Solution: téléchargé boot-repair.iso amorçable ( http://sourceforge.net/projects/boot-repair-cd/ ) et créé un disque USB amorçable. Démarré à partir de celui-ci et connecté à Internet et commencé "Réparation recommandée", puis suivi les instructions en quelques étapes (grub supprimé / désinstallé puis réinstallé une nouvelle version), ce qui a fonctionné pour moi! Je suppose que dans votre cas, grub devrait être désinstallé puis réinstallé sur sda8 au lieu de sdb1.


cela fonctionne pour moi: j'ai téléchargé l' image du CD de réparation de démarrage - j'ai utilisé x64 car l'installation d'Ubuntu est x64. Puis installé ISO via unetbootin . Réparation régulière et alto!
Meta

Le disque de démarrage (version 64 bits 14.04 Desktop) avec la réparation de démarrage a également fonctionné pour moi, après la mise à niveau de 13.10 à 14.04. Pour ma part j'ai suivi les instructions ici (la 2ème option) et cliqué sur "Réparation recommandée" dans l'outil puis la larve a soudainement retravaillé!
Krøllebølle

2

J'ai eu le même problème. Je suppose que, puisque j'ai deux disques durs, le système essaie de démarrer à partir du mauvais lecteur où une ancienne version de GRUB est installée. Ma solution était de démarrer Ubuntu avec une clé USB (peu importe la version). Une fois que vous démarrez, ces commandes le feront, exécutez en tant que root:

mkdir /tmp/drive
sudo mount /dev/sdX1 /tmp/drive
sudo mount --bind /dev /tmp/drive/dev
sudo mount --bind /proc /tmp/drive/proc
sudo mount --bind /sys /tmp/drive/sys
sudo chroot /tmp/drive
dpkg-reconfigure grub-pc

Où sdX1 doit être le lecteur sur lequel votre système est installé. Lorsque vous exécutez la dernière commande, vous devez sélectionner le lecteur sdX, bien que je suppose que l'exécuter plusieurs fois installera la nouvelle version de grub sur chaque lecteur et vous donnera une certaine tranquillité d'esprit.



1
@Akmur avez-vous oublié --bind éventuellement, ou montez le mauvais lecteur? --bind prend le système de fichiers dans le lecteur USB et remplace / dex / sdX1 / dev par usedevice / dev
eyoung100

@Akmur, vous avez probablement monté la mauvaise partition. Lorsque j'ai mentionné sdX1, cela doit faire référence à votre partition de démarrage, qui devrait déjà contenir les répertoires dev, proc, sys. Si ce n'est pas le cas, alors vous montez probablement la mauvaise partition. Si vous pensez avoir monté la bonne partition, peut-être alors continuez et créez ces répertoires manquants avec mkdir.
freeseek

1

J'ai eu la même erreur lors de la mise à niveau de 13.10 à 14.04. Ces instructions m'ont semblé un peu intimidantes.

J'ai fini par créer une clé USB amorçable avec Super Grub Disk dessus. http://www.supergrubdisk.org/

Démarré à partir de cela. Au démarrage, il lui a dit de détecter les systèmes d'exploitation installés. Il a trouvé mon installation Ubuntu 14.04 alors je lui ai dit de démarrer cela. Démarré sans problème.

J'ai déjà installé Boot Repair sur mon système. https://sourceforge.net/p/boot-repair

J'ai exécuté cela et accepté les modifications par défaut.

Fermer. Sortit la clé USB de la fente, appuya sur l'alimentation et attendit en retenant son souffle.

Le système a démarré normalement! Problème résolu.


L'OP a déclaré que la réparation de démarrage ne fonctionnait pas, donc ce n'est probablement pas une réponse.
mikewwhat

1

Je suppose que vous avez des fichiers EFI périmés dans votre partition EFI. Il existe un bogue de tableau de bord spécifique à la situation EFI qui, je le soupçonne, répond à votre cas. Cela a fonctionné pour moi après toutes les autres suggestions. Le correctif consiste à mettre à jour les fichiers EFI manuellement . Vous trouverez ci-dessous une procédure pas à pas. Notez que vous devrez remplacer votre partition EFI à la place de /dev/sda1.

  1. Démarrer sur un CD live
  2. Ouvrir xterm
  3. Utilisez parted pour déterminer votre partition EFI: sudo parted -l(remplacez / dev / sda1 à l'étape suivante)
  4. Montez votre partition EFI: sudo mount /dev/sda1 /mnt
  5. Mettez à jour le fichier Boot EFI: sudo cp /mnt/EFI/ubuntu/grubx64.efi /mnt/EFI/Boot/bootx64.efi

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.