Depuis que j'ai mis à jour Windows vers la version 8.1, mon menu Grub a disparu. J'ai utilisé Ubuntu en utilisant Live USB, j'ai utilisé Boot-Repair mais quelque chose s'est mal passé. Si je clique sur Réparation recommandée, le message d'erreur suivant s'affiche:
TPG détecté. Veuillez créer une partition d’amorçage BIOS (> 1 Mo, système de fichiers non formaté, indicateur bios_grub). Cela peut être effectué via des outils tels que Gparted. Puis réessaye. Sinon, vous pouvez réessayer après avoir activé l'option [Séparer/boot/efi partition:].
J'ai donc essayé de définir mon sda9 (je pense que c'est la partition système Ubuntu, puisqu'il s'agit de ext4) avec l'indicateur bios_grub, puis de réexécuter Boot-Repair. Ça n'a pas marché.
Je ne sais pas quoi faire. Mon Grub fonctionnait bien (avec UEFI) avant la mise à jour de Windows.
J'ai enlevé le drapeau bios_grub. Ensuite, j'ai utilisé fsck
et aucune erreur n'a été détectée. J'ai donc réessayé avec Boot-Repair mais cela me donne toujours l'erreur "GPT détecté". Mon démarrage est en mode UEFI, Secure Boot est "désactivé".
Lorsque je démarre mon ordinateur avec SecureBoot OFF, je peux accéder au menu GRUB. Mais c'est vide (la seule voix est "Configuration du système").
J'ai monté mon disque système Ubuntu:
Sudo mount /dev/sda9 /mnt
et les autres choses:
Sudo mount --bind /dev /mnt/dev
Sudo mount --bind /proc /mnt/proc
Sudo mount --bind /sys /mnt/sys
Je me suis connecté sur le système avec chroot
:
Sudo chroot /mnt
J'ai réinstallé la bouffe:
grub-install /dev/sda
update-grub2
Mais ça ne marche toujours pas.
Tout d'abord, l'indicateur bios_grub
dans parted
ou GParted est un moyen d'identifier une partition d'amorçage du BIOS. GRUB 2 utilise cette partition pour contenir une partie de son code d'amorçage lorsque l'ordinateur démarre en mode BIOS. mode. Sa taille est normalement d'environ 1 Mo, bien qu'elle puisse être plus petite dans certains cas. Plus important encore, si Boot Repair a réexécuté le programme d'installation GRUB après avoir défini l'indicateur bios_grub
sur votre partition racine Linux (/
), vous avez peut-être supprimé cette partition. Ainsi, avant de faire autre chose, je vous recommande:
bios_grub
de votre partition racine Linux (/
)./
) Linux avec fsck
(ou une fonctionnalité équivalente dans GParted ou d'autres outils graphiques). Si la partition contient des erreurs, corrigez-les ou restaurez votre système à partir d'une sauvegarde. Une fois que vous êtes certain de pouvoir monter la partition et de l’utiliser normalement si vous continuez.Deuxièmement, vous avez eu ce problème parce que vous avez démarré votre disque d’urgence en mode BIOS/CSM/Legacy plutôt qu’en mode EFI. Vous devez apprendre à contrôler le mode de démarrage de votre ordinateur. Vous pouvez généralement le faire via un gestionnaire de démarrage accessible en appuyant sur Échap ou sur une touche de fonction au début du processus de démarrage (avant que GRUB n'apparaisse); mais il n'y a pas de standardisation sur la façon d'accéder à ce gestionnaire de démarrage ou sur les options qu'il fournit. Ainsi, vous devrez peut-être expérimenter pour comprendre cela.
Troisièmement, si vous parvenez à démarrer votre live CD en mode EFI, Boot Repair devrait résoudre le problème. Sinon, vous devriez pouvoir utiliser une version CD-R ou une clé USB de mon gestionnaire de démarrage rEFInd pour que Linux soit démarré. Une fois que Linux est opérationnel, vous devriez pouvoir utiliser efibootmgr
pour restaurer GRUB en tant que chargeur de démarrage par défaut, mais les détails dépendent de la configuration actuelle. En bref, vous devez utiliser l'option -o
en efibootmgr
pour définir l'entrée GRUB comme première entrée. Cette question et ces réponses couvrent le problème sous un angle différent. Au lieu de restaurer GRUB, vous pouvez également installer rEFInd sur votre disque dur.
EDIT: Essayez d’utiliser mon gestionnaire de démarrage rEFInd: Utilisez la clé USB ou l’image CD-R pour créer un support approprié démarrer à partir de cela. Cela devrait vous donner une option pour Windows et au moins une option pour Linux. Si vous pouvez démarrer Windows et Linux, installez le paquet Debian de rEFInd sous Linux. Cela devrait permettre à l'ordinateur d'utiliser rEFInd par défaut et de pouvoir tout démarrer normalement.
Vous pouvez gérer ce problème comme suit:
Commencez Gparted.
Identifiez la partition de démarrage. Le mien est le premier 16.00 Mo sur mon disque système.
Supprimez la partition (vous ne voudrez pas supprimer la mauvaise partition et vous perdrez toutes les données! Arrêtez-vous si vous ne savez pas ce que vous faites!).
Créez une nouvelle partition (ne la formatez pas sur un système de fichiers), appliquez les paramètres.
Marque la nouvelle partition comme bios_grub en utilisant l’option Gérer les drapeaux.
Maintenant, essayez à nouveau la réparation de démarrage.