web-dev-qa-db-fra.com

Problèmes de double démarrage de Windows 8 et Ubuntu

Je sais que des tonnes de gens ont des problèmes de double démarrage Linux avec des machines Windows 8 à cause de toutes les ordures UEFI. En fait, j'ai eu un problème similaire l'année dernière.

Après avoir installé Windows 8 à côté d'Ubuntu, je ne peux que démarrer 8

Ce lien indique comment j'ai résolu mon problème à ce moment-là. Voici mon problème maintenant. J'ai foiré mon système d'exploitation et j'ai décidé de tout charger à nouveau à partir de zéro. J'ai réinstallé Windows 8, puis récupéré une copie d'Ubuntu 14.04 (auparavant, j'utilisais 12.04). J'ai le même problème où Windows 8 se force à démarrer, mais ce qui a résolu mon problème avant ne fonctionne plus. À partir d'un cd live, j'ai exécuté ces commandes:

Sudo add-apt-repository ppa:yannubuntu/boot-repair && Sudo apt-get update
Sudo apt-get install -y boot-repair && (boot-repair &)

J'obtiens toutes sortes d'erreurs sur le fait que la réparation de démarrage n'est pas une commande valide. J'ai finalement pu exécuter la réparation de démarrage en utilisant ceci:

Sudo add-apt-repository -y ppa:yannubuntu/boot-repair
Sudo sed 's/trusty/saucy/g' -i /etc/apt/sources.list.d/yannubuntu-boot-repair-trusty.list
Sudo apt-get update
Sudo apt-get install -y boot-repair && boot-repair

J'obtiens un avertissement sur UEFI activé (après avoir fait tout ce que je sais pour m'assurer qu'il est désactivé), puis les erreurs de réparation de démarrage disparaissent. Voici le message qu'il génère:

http://paste.ubuntu.com/7852448/

J'ai remarqué que je peux démarrer sur Ubuntu si j'arrête le processus de démarrage normal et sélectionne ubuntu dans le menu de démarrage, mais c'est le meilleur que j'ai.

J'ai également essayé d'exécuter cette commande à partir de Windows:

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

Je meurs ici. Toute aide que vous pourriez fournir serait superbe. Merci!

1
TheIronCheek

D'accord, croyez-le ou non, je l'ai corrigé. J'ai relancé la réparation de démarrage plusieurs fois jusqu'à ce que cela fonctionne réellement ... Il y a quelques lignes que la réparation de démarrage vous permet de copier et coller et l'une de ces lignes échouait. J'ai séparé les commandes en lignes individuelles plutôt que de les enchaîner et cela s'est moins mal déroulé ... puis Grub s'est très bien chargé ...

Merci pour votre aide!

1
TheIronCheek

Voici les étapes clés et les informations pour obtenir un ordinateur portable HP à double démarrage entre Windows 8/8.1 et Ubuntu 14.04.02. Cet ordinateur portable est un Pavilion g7-2215dx assez moderne.

  1. Le BIOS de cet ordinateur portable (et probablement la plupart des ordinateurs portables HP modernes) dispose d'un menu de démarrage UEFI auquel vous pouvez accéder en appuyant sur ESC, puis sur F9 lorsque ce menu apparaît. Ce menu FONCTIONNE CORRECTEMENT si les strophes sont correctement configurées dans la partition EFI et que le disque est correctement disposé. (c'est-à-dire: si vous avez autorisé Ubuntu à charger les modifications correctes dans la partition EFI, ou si vous avez exécuté la réparation de démarrage, et si la partition est au bon endroit) Malheureusement, le programme d'installation d'Ubuntu suppose que si UEFI est présent, le le système a une seule partition Windows et aucun menu de démarrage. La réalité est que ces machines HP ont une partition de récupération cachée qui est répertoriée dans le magasin de démarrage UEFI et la raison pour laquelle le menu de démarrage de Windows n'apparaît pas est que HP a réglé en usine le délai d'expiration du menu de démarrage à 0. (astuce bon marché) Le programme d'installation d'Ubuntu ne semble pas comprendre les configurations multi-boot qui existent déjà, il ne crée donc pas correctement les entrées.

  2. Ce BIOS raccourci vers {bootmgr} au démarrage au lieu de {fwbootmgr}. Cependant, la commande F9 va correctement à {fwbootmgr} C'est pourquoi le hack courant de modification de {bootmgr} fonctionne.

  3. HP a mis les clés qui permettent au chargeur de démarrage sécurisé de grub de fonctionner dans le BIOS, il est donc possible de laisser le démarrage sécurisé activé et d'installer Ubuntu. Malheureusement, en raison d'un bogue dans grub, vous ne pouvez pas laisser le démarrage sécurisé activé et le double démarrage, car en mode de démarrage sécurisé lorsque grub transfère le contrôle au chargeur de démarrage Windows, les clés de ce chargeur ne semblent pas correspondre. Vous pouvez laisser le démarrage sécurisé et installer uniquement Ubuntu. OR vous pouvez laisser le démarrage sécurisé activé et utiliser la touche F9 pour sélectionner manuellement grub ou Windows et oublier de le faire démarrer directement dans grub.

  4. Vous ne devez PAS autoriser le programme d'installation par défaut d'Ubuntu à installer grub dans/dev/sda. Il doit installer le chargeur de démarrage dans/dev/sda2 (ou quelle que soit la partition EFI). C'est aussi probablement une bonne idée de créer des partitions logiques et non des partitions primaires pour l'installation d'Ubuntu.

  5. Une autre clé est que si vous changez la priorité de démarrage de quoi que ce soit, cela interférera avec le démarrage. Ce qui signifie que, avant l'installation, vous modifiez le BIOS pour démarrer à partir d'une clé USB ou d'un CD-ROM, puis installez, lorsque Ubuntu crée les entrées UEFI, il le fera en fonction de cet ordre de démarrage. Si vous avez terminé l'installation, puis changez le BIOS pour démarrer à partir du disque dur, cela gâche les choses. Lorsque vous apportez des modifications dans l'ordre de démarrage du BIOS, le BIOS apporte des modifications dans le magasin de démarrage UEFI sur la partition EFI. Ces modifications sont généralement incorrectes.

  6. Après avoir terminé l'installation d'Ubuntu et le redémarrage de l'ordinateur portable sous Windows, accédez à une invite de commande d'administration et exécutez les commandes:

    bcdedit /set {bootmgr} path \EFI\Ubuntu\shimx64.efi  
    bcdedit /set {bootmgr} displaybootmenu no  
    
  7. EasyBCD 2.2 est rompu avec la partition EFI sur ces machines - l'auteur ou EasyBCD n'avait apparemment pas une de ces machines à tester et son logiciel fait des hypothèses incorrectes, et il ne peut pas interpréter correctement le magasin UEFI sur la partition EFI. J'ai complètement scotché plusieurs fois un disque de démarrage double avec cet utilitaire, pendant les tests. Je ne recommande pas de l'utiliser en aucune circonstance !!! Notez également que les DVD de récupération Windows ne répareront PAS les systèmes UEFI à double démarrage si la partition EFI est scotchée - vous devrez reformater - ils ne touchent PAS cette partition !!!! Je ne pense même pas que la sauvegarde Windows le fasse. Un utilitaire de sauvegarde en bloc pourrait ressembler à Macrium Reflect.

  8. Le meilleur outil jusqu'à présent pour contourner la partition EFI que j'ai trouvée est bcdedit sous Windows. Exécutez bcdedit /? et bcdedit/enum ALL/v et bcdedit/enum /? et ainsi de suite - exécutez essentiellement /? de toutes les options de bcdedit et vous en apprendrez beaucoup sur le fonctionnement du démarrage.

  9. Si vous chargez une mise à niveau de Windows plus tard (c'est-à-dire: en passant de Windows 8 à Windows 8.1), le programme d'installation de Windows plus récent se moquera d'EFI et désactivera à nouveau le double démarrage. Vous ne pourrez peut-être pas récupérer le double démarrage. Une erreur que j'ai eue après avoir fait cela était de la réparation de démarrage qui disait que grub était trop loin du début du disque. Apparemment, la mise à jour de Windows 8.1 a déplacé la partition EFI. Je n'ai jamais réussi à faire démarrer cette machine dans grub jusqu'à ce que je la reformate.

  10. Ces machines ont des BIOS "intelligents" - comment sont-ils intelligents? Ils sont intelligents car ils lisent le magasin EFI, essaient d'exécuter le menu de démarrage et si cela échoue, ils sont codés en dur pour démarrer Windows. Donc, le résultat est que si vous faites une erreur dans la boutique EFI, vous n'obtiendrez pas de message d'erreur utile (comme s'il ne peut pas trouver un fichier incorrectement nommé ou quelque chose), il démarrera simplement dans Windows. Ils sont conçus pour réduire les appels d'assistance des utilisateurs qui bousillent leur PC. Et, s'ils détectent ce qu'ils pensent être une entrée incorrecte dans le magasin EFI, ils l'effaceront parfois et le remplaceront par ce qu'ils pensent être une entrée correcte lors du POST.

Soit dit en passant, les DVD de récupération d'usine NE PEUVENT PAS vous donner une chance de partitionner votre disque tout Nice et joli pour un double démarrage. Ils codent généralement en dur les emplacements des partitions.

En résumé, la partition EFI est un énorme progrès par rapport aux schémas de démarrage précédents et elle sera utilisée à l'avenir afin de mieux vous y habituer et en savoir plus. Les machines HP ont toutes des partitions de récupération HP et des partitions de récupération Windows accessibles avec diverses combinaisons de touches F et de sélections à partir de Windows 8 et versions ultérieures, cela fait partie de l'initiative "Zero installation media" de Microsoft, où ils essaient de faire en sorte NE PAS fournir de CD de récupération avec leurs machines. (principalement comme mesure anti-piratage) Ces partitions de démarrage sont toutes correctement configurées dans la partition EFI et le problème est que les BIOS des machines adoptent tous des approches différentes pour lire EFI, et de nombreux programmes utilitaires (comme EasyBCD et Le programme d'installation d'Ubuntu lui-même et le BIOS HP) n'interprètent pas correctement les configurations à démarrage multiple dans EFI et lorsqu'ils apportent des modifications, ils fouillent les choses. Cependant, vous pouvez généralement résoudre les problèmes avec bcdedit sous Windows, mais vous devez comprendre EFI, alors faites la lecture nécessaire.

1
Ted Mittelstaedt

Essayez avec Réparation de démarrage vous pouvez l'obtenir à partir d'ici - http://sourceforge.net/projects/boot-repair-cd/files / installez-le sur démarrage CD/DVD/USB et quand il vous demande une session 32/64 bits choisissez 32 bits si votre PC est 32 bits s'il est 64 bits, choisissez 64 bits, puis s'il vous demande des mises à jour, cliquez sur Non, puis à la fin de l'analyse, cliquez sur Réparation recommandée

1
radibg2

En fonction de votre sortie Boot Repair, et en particulier de la sortie efibootmgr qu'elle affiche, elle devrait fonctionner maintenant. (Une mise en garde: il n'y a aucune preuve de chargeur de démarrage EFI sur votre ESP; mais le fait que Windows démarre signifie que cela doit être une omission de réparation de démarrage, donc j'écarte cette preuve.) Le fait que cela ne fonctionne pas suggère fortement vous avez un firmware mal cassé. Votre question précédente indique que vous avez un ordinateur portable HP, et de nombreux HP sont connus pour avoir de tels EFI gravement défectueux. Ma première suggestion est donc de vérifier auprès de HP s'il y a une mise à jour du firmware. Si tel est le cas, appliquez-le et réessayez avec la commande bcdedit dans Windows; c'est le plus susceptible de fonctionner.

Notez également que la spécification de grubx64.efi avec bcdedit est approprié si vous avez désactivé le démarrage sécurisé. Si le démarrage sécurisé est actif, vous devez spécifier shimx64.efi, ne pas grubx64.efi. En précisant shimx64.efi fonctionnera également si Secure Boot est inactif, à condition que le fichier soit installé, comme il l'est normalement même sur les systèmes non Secure-Boot.

Encore un point: si vous ne l'avez pas déjà fait, vous devez désactiver ( Windows Fonction de démarrage rapide, comme décrit ici (entre autres endroits). Si cette fonctionnalité est laissée activée, elle peut entraîner une corruption de fichiers sur les partitions partagées, y compris le ESP où résident vos chargeurs de démarrage. Cela peut être la raison pour laquelle la réparation de démarrage n'a détecté aucun chargeur de démarrage sur le ESP, et il est concevable que cela contribue à vos problèmes.

Si suivre ces conseils ne fonctionne pas, vous avez deux choix:

  • Vendez votre ordinateur portable à quelqu'un qui ne veut rien faire d'autre que Windows et utilisez l'argent pour acheter quelque chose qui n'est pas cassé. En ce moment, c'est ma première recommandation; les fabricants ont eu plus qu'assez de temps pour réparer leurs EFI cassés, et le fait que beaucoup n'en aient pas est un signe de manque de respect envers vous, leur client. Certains, comme ASUS et Lenovo, ont des EFI qui sont plus susceptibles de fonctionner. Les nouveaux modèles sont également plus susceptibles de fonctionner que les anciens.
  • Renommez votre chargeur de démarrage Ubuntu (EFI\ubuntu\grubx64.efi ou EFI\ubuntu\shimx64.efi sur l'ESP; ou vous pouvez renommer n autre chargeur de démarrage EFI de manière appropriée) pour remplacer le chargeur de démarrage de Microsoft (EFI\Microsoft\Boot\bootmgfw.efi) et ajustez la configuration de votre chargeur de démarrage. C'est difficile à faire à la main avec GRUB, mais il y a une option dans Boot Repair pour faire le travail. C'est parmi les options avancées et cela s'appelle quelque chose comme "sauvegarder et remplacer les fichiers du chargeur de démarrage EFI". (Je ne me souviens pas de la formulation précise.) C'était la valeur par défaut il y a un an ou deux, mais dans la plupart des cas, elle est excessive et peut provoquer une multitude de nouveaux problèmes sur les ordinateurs avec des EFI non cassés, donc ce n'est plus la valeur par défaut. Vous devrez peut-être l'utiliser et vivre avec les conséquences, ou installer un autre chargeur de démarrage de cette manière.
1
Rod Smith