Grub n'affiche pas d'option Windows 8 après le double démarrage

25

Ainsi, j'ai réussi à double amorcer ma machine Windows 8 avec Ubuntu 12.04. Cependant, je n'ai toujours pas de méthode pratique pour choisir le système d'exploitation à charger au démarrage.

Après l’installation d’Ubuntu, mon ordinateur charge toujours directement Windows 8. J'ai ensuite ajouté grubx64.efi à la liste blanche de mon chargeur de démarrage. Mais après cela, ma machine charge directement Ubuntu sans même qu’une ombre de GRUB ne se présente!

J'ai utilisé boot-repair et j'ai obtenu l'URL paste.ubuntu: paste.ubuntu.com/1326074 . Après avoir exécuté la réparation de démarrage (et re-blanche en répertoriant le fichier grubx64.efi ), GRUB apparaît maintenant, mais sans aucune option Windows 8!

Enfin, j'ai couru sudo fdisk -l et cela m'a donné ceci:

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 750.2 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x6396389f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  1465149167   732574583+  ee  GPT
Partition 1 does not start on physical sector boundary.

Je suppose que mon problème a quelque chose à voir avec l'avertissement de fdisk ci-dessus mais je ne sais pas quoi en faire. Comment puis-je procéder maintenant?

Modifier

Mon etc/default/grub est le suivant:

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR='lsb_release -i -s 2> /dev/null || echo Debian'
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command 'vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

Par ailleurs, voici ce que j'ai suivi lors de l'installation. mon dual-boot. Le tutoriel (qui utilise, 11.10, je dois le noter), ne mentionne rien à ce problème. Y a-t-il quelque chose que je n'aurais pas dû faire?

    
posée skytreader 02.11.2012 - 12:12
la source

7 réponses

17

Tout d’abord, votre sortie fdisk -l n’est pas un problème; qui identifie simplement votre disque comme utilisant le système de partitionnement GPT (Table de partition) GUID . Pour afficher vos partitions, vous devez utiliser un outil compatible GPT, tel que gdisk ou parted , plutôt que fdisk , qui ne comprend pas GPT.

Deuxièmement, vous pourrez peut-être amener GRUB à charger en chaîne Windows en ajoutant une entrée appropriée à /etc/grub.d/40_custom , puis en effectuant un sudo update-grub . Une entrée peut ressembler à quelque chose comme ceci:

menuentry "Windows 8" {
    set root='(hd0,gpt1)'
    chainloader /EFI/microsoft/BOOT/bootmgfw.efi
}

Les détails peuvent toutefois dépendre de votre installation.

Troisièmement, si vous considérez que rEFInd est moche, vous pouvez toujours essayer un autre thème rEFInd ou créer le vôtre, comme décrit in la documentation rEFInd. Si vous préférez un chargeur de démarrage en mode texte, vous pouvez également définir l'option textonly dans refind.conf . Vous pouvez atteindre un but similaire en passant à gummiboot.

Quatrièmement, si frEFInd signale régulièrement des erreurs, veuillez les noter ou prendre une photo de l'écran avec un appareil photo numérique et me le signaler. (Je suis le responsable de rEFInd.) Les bugs ne peuvent pas être corrigés si personne ne les rapporte. ou s’ils ne sont pas des bogues dans rEFInd, les messages peuvent fournir des indices sur la façon de résoudre le problème.

Enfin, il est possible de démarrer Linux via rEFInd (ou gummiboot) sans utiliser GRUB; vous avez juste besoin d'un autre chargeur de démarrage EFI. Ma préférence personnelle est le chargeur de stub EFI du noyau Linux. Disponible uniquement dans les noyaux 3.3.0 et ultérieurs. , bien que. Comme Ubuntu 12.04 est livré avec un noyau 3.2.0, vous devez soit trouver un 3.3.0 pré-construit pour Ubuntu 12.04 (j'ai entendu parler de telles choses, mais je n'ai aucun lien à portée de main), soit créer votre posséder du code source. (Vous pouvez également installer Ubuntu 12.10, qui est livré avec un noyau approprié, mais vous souhaitez sans doute une version LTS, de sorte que cela risque de ne pas être optimal.) Consultez la documentation de rEFInd page sur le démarrage de Linux pour plus de détails sur la manière de le configurer. Vous pouvez également utiliser ELILO ou GRUB Legacy. Si vous vous opposez simplement au délai, vous pouvez réduire la valeur du délai d’expiration de GRUB 2 et le configurer pour qu’il n’affiche pas le menu par défaut.

    
réponse donnée Rod Smith 02.11.2012 - 19:24
la source
8

Démarrez Ubuntu avec un CD,
Choisissez "Essayez Ubuntu",
Se connecter à Internet,
Ouvrez une fenêtre de terminal à l'aide de Ctrl - Alt - t , puis exécutez: boot-repair

Si la réparation d'amorçage est introuvable, installez-la:

sudo add-apt-repository ppa:yannubuntu/boot-repair &&
sudo apt-get update &&
sudo apt-get install -y boot-repair &&
boot-repair

Cliquez sur Réparation recommandée. Écrivez sur un papier la nouvelle URL qui apparaîtra. Redémarrez le PC, vous devriez obtenir un menu GRUB avec un accès à la fois à Ubuntu et à Windows. En cas de problème, indiquez la nouvelle URL.

    
réponse donnée Scott Stensland 20.03.2013 - 04:27
la source
7

Les deux réponses avec /EFI/Microsoft/Boot/bootmgfw.efi feraient l'affaire. Cependant, j'ai piraté comme un diable pour obtenir les bons paramètres pour set root='(hd0,gpt1)' . Si vous savez que c'est très simple

Lorsque GRUB démarre: appuyez sur c donnez la commande ls à l'invite.
Vous obtenez une liste de partitions sur les disques durs tels que (hd0, gpt1), etc.

Tapez ls (hd0, gpt1) et essayez les autres.
Regardez l'étiquette et si elle indique EFI, vous savez que vous avez un succès.

Avertissement: il pourrait y avoir plus de partitions étiquetées EFI, selon la manière dont vous avez installé Ubuntu. Essayez-les tous.

    
réponse donnée Jørgen 15.02.2013 - 18:46
la source
6

Essayez de lancer sudo update-grub . Cela devrait, espérons-le, reconnaître automatiquement Windows 8, l'ajouter au GRUB et reconfigurer le menu.

Si cela échoue, partagez votre fichier /etc/default/grub ici, nous y jetterons un coup d'œil.

    
réponse donnée Tom Klino 02.11.2012 - 12:24
la source
3

Essayez de créer un fichier appelé /etc/grub.d/30_windows qui contient ceci: %pr_e% Puis exécutez sudo update-grub et redémarrez.

Didacticiel complet

    
réponse donnée tradeJmark 14.12.2012 - 21:54
la source
1
  1. Téléchargez super Grub et suivez ses instructions. Je ne quitte jamais la maison sans ça. Très utile lorsque le menu de commande ne s'affiche pas.

  2. Vous devrez charger un CD et le démarrer. Suivez simplement les instructions fournies.

  3. Il peut également être utilisé pour réparer les fenêtres. Comme vous ne pouvez démarrer que sous Windows 8, vous voulez choisir le correctif Linux.

Jouez avec cela, mais lisez les instructions. Vous vous sentirez comme un expert après un moment. RS

    
réponse donnée Fox 13.05.2013 - 04:10
la source
0

Solution de contournement ultime

(* Parce que Tom n'a pas fonctionné et que le lien de NikTh est trop compliqué. Mais bon, merci de m'avoir dérangé!)

Installez rEFInd .

J'accepte ma propre réponse jusqu'à ce que quelqu'un indique une faille possible et une solution ou corrige mes problèmes (qui, malheureusement, pose simplement la question "Comment puis-je mettre Windows 8 dans GRUB facilement ? ").

( Modifier le 8/6/17: j'ai finalement utilisé rEFInd pour résoudre ce problème (voir la réponse acceptée ci-dessus).)

Loin d’être une solution parfaite, utiliser rEFInd semble être un travail très difficile. D'une part, il semble moche (désolé, rEFInd) et me dit que l'accès a été refusé sur certains .efi ({ext2_x64, hfs_x64, iso9660_x64, reiserfs_x64} .efi) au démarrage - rien de critique, et s'en va avec un bouton presse*. Enfin, choisir Ubuntu efi charge toujours GRUB, ce qui est une étape totalement inutile, du moins puisque je ne me soucierai pas de conserver plusieurs versions du noyau.

En résumé ...

Avantages: mon système fonctionne désormais plus ou moins comme mes dual-boot antérieurs à UEFI. Inconvénients: il semble moche, plus un temps de démarrage plus long.

* Je dois noter que ce rEFInd a été installé via install.sh sur ma partition Ubuntu. Les expériences précédentes avec rEFInd (configuration via Windows) n’avaient pas ce problème.

    
réponse donnée skytreader 02.11.2012 - 19:01
la source

Lire d'autres questions sur les étiquettes