3 votes

Complètement raté Grub/efi/gpt dual boot

Il semble que j'ai presque entièrement bousillé ma machine. J'ai essayé d'installer un liveusb ubuntu sur mon disque dur externe, mais dans le processus j'ai foiré mon installation interne. L'externe fonctionne ;)

C'est un système à double démarrage, et il était initialement livré avec win8 plus un tas de partitions de récupération Lenovo/Windows. Il dispose également d'un SSD hybride de 24 Go. J'avais désactivé secureboot avant, et installé ubuntu 13.04, et récemment mis à niveau vers 14.04. Tout fonctionnait bien jusqu'à ma petite mésaventure. Tous mes drapeaux de démarrage semblent changer constamment maintenant, aussi. Je ne sais pas vraiment pourquoi.


Sortie de boot-repair (qui ne m'a pas permis de choisir /dev/sda2 ou /dev/sda11, seulement sda8 (qui est ma partition personnelle ?). J'ai quand même essayé. Il a dit qu'il a réussi, mais n'a pas fait quelque chose évidemment.

http://paste.ubuntu.com/7303953/


Mes (nombreuses) partitions sont les suivantes :

/dev/sda1 -- WINRE_DRV (1000mb ntfs, flags : hidden, diag)

/dev/sda2 -- c'était ma partition EFI d'origine je pense (elle était à l'origine étiquetée SYSTEM_DRV et était formatée en fat32, mais maintenant c'est un système de fichiers non reconnu).

/dev/sda3 -- inconnu, msftres ? ?

/dev/sda4 -- Windows8 OS (68GB ntfs, flags : msftdata)

/dev/sda11 -- J'ai créé cette partition en fat32 avec le drapeau 'boot', dans l'espoir de créer une autre partition efi et de la déplacer, mais elle ne semble pas être reconnue par boot-repair.

/dev/sda5 (350mb, ntfs flags:hidden, diag) -- Aucune idée de ce que c'est.

/dev/sda6 (20GB ext4, flags : hidden ?) -- ma partition système pour ubuntu. Je ne sais pas pourquoi elle a maintenant un drapeau "caché".

/dev/sda7 -- 4GB swap

/dev/sda8 -- ma partition personnelle pour ubuntu (75gb ext3, flags : msftdata)

/dev/sda10 -- partition de données partagées ntfs de 290GB (flags : msftdata)

/dev/sda9 -- Récupération Lenovo (10GB ntfs, flags : hidden, diag)


Il y a vraiment quelque chose qui cloche ici. Je préférerais vraiment ne pas reformater. J'ai lu la plupart des articles concernant l'UEFI et le GPT, etc., mais je n'arrive pas à résoudre mon problème, et je semble même l'aggraver.

Il est aussi possible que le livecd Grub n'utilise pas les bons fichiers ? Il essaie d'installer avec i386-pc, alors que je pensais que je devrais utiliser quelque chose comme x86_64-efi-signed ou autre.

Quelqu'un pourrait-il m'aider à résoudre ce problème ?


Edit :

Ok, donc j'ai téléchargé et installé rEFInd sur Windows et j'ai fait une USB amorçable avec ça, ce qui m'a permis de démarrer sur mon OS Linux réel et non sur un LiveCD. A partir de là, j'ai pu utiliser boot-repair correctement pour installer Grub (sur /dev/sda11) et pour démarrer /dev/sda6.

Le problème avec boot-repair avant était qu'il ne détectait pas ma partition EFI et essayait d'installer du non-efi sur mon /dev/sda6 (probablement parce que je le faisais depuis un livecd). Il semble que ce soit un problème avec le Grub qui est livré avec ubuntu14.04 cependant, qu'il n'a pas de support EFI ou quelque chose ?

Bref, maintenant j'ai EFI sur /dev/sda11, mais j'ai deux partitions inconnues (sda2 et sda3). Qu'est-ce que sda3 en premier lieu ? Et que puis-je faire avec sda2 et les fichiers qui s'y trouvent (comme pour le matériel de récupération Lenovo) ? Puis-je simplement supprimer ces partitions, ou cela causera-t-il d'autres problèmes ?

Enfin, est il suffit maintenant de lancer la récupération de Windows ? J'imagine que ça va encore casser mon ubuntu et Grub.

Merci !

1voto

Rod Smith Points 41849

D'abord, il vous manque un Partition système EFI (ESP), qui est utilisé pour contenir les chargeurs de démarrage EFI. La plupart des ordinateurs livrés avec Windows 8 utilisent /dev/sda2 comme ESP, et votre /dev/sda2 est à peu près de la bonne taille pour cela, mais votre /dev/sda2 contient un système de fichiers Linux et n'a pas de chargeurs de démarrage EFI. Mon intuition est donc que vous avez accidentellement détruit votre ESP, rendant l'ordinateur non amorçable.

En rapport avec le premier point, vous ne semblez pas avoir de programmes EFI boot loader sur votre disque dur ou votre SSD.

あなたの /dev/sda11 est à peu près de la bonne taille pour être un ESP et possède un système de fichiers FAT (ce qu'un ESP doit avoir), mais il est marqué comme étant une Partition de démarrage du BIOS.

Dans un premier temps, vous devez créer un ESP approprié. Il y a deux façons relativement faciles de le faire :

  • Ajustez le code de type sur /dev/sda11 . Dans GParted, vous pouvez le faire en supprimant le drapeau "bios_grub" et en mettant le drapeau "boot". Dans gdisk vous le feriez en définissant le code de type comme suit EF00 .
  • Ajustez le code de type sur /dev/sda2 et le rendre FAT32. Dans GParted, vous ferez cela en définissant un "drapeau de démarrage" et en créant un système de fichiers FAT32 sur celui-ci. Dans gdisk vous devez définir le code de type comme suit EF00 et ensuite utiliser la méthode séparée mkdosfs pour créer un système de fichiers FAT32 sur la partition.

Une fois que c'est fait, vous pouvez commencer à vous rétablir. En théorie, vous pouvez utiliser Boot Repair pour effectuer cette tâche, du moins pour Linux ; mais comme il semble qu'il vous ait déjà mené sur le mauvais chemin, vous voudrez peut-être procéder autrement :

  1. Téléchargez et préparez une clé USB amorçable ou une version CD-R de mon site Web. rEFInd gestionnaire de démarrage.
  2. Boot avec rEFInd. Il devrait vous montrer au moins une option pour démarrer Linux.
  3. Démarrage sur Linux.
  4. Ouvrez une fenêtre Terminal.
  5. Modifiez votre /etc/fstab pour monter votre ESP ( /dev/sda2 o /dev/sda11 ) à /boot/efi .
  6. Type sudo mount -a .
  7. Type df -h et assurez-vous qu'il y ait une ligne pour /boot/efi qui montre que la bonne partition est montée. Si ce n'est pas le cas, retournez à l'étape 5.
  8. Téléchargez et installez la version du paquetage Debian de rEFInd.

A ce stade, rEFInd devrait vous permettre de démarrer Linux. Votre installation Windows restera cependant non amorçable jusqu'à ce que vous exécutiez un outil de récupération Windows. Vous devriez pouvoir télécharger quelque chose sur le site de Microsoft pour réparer le boot loader de Windows, mais il se trouve que je n'ai pas d'URL ou d'instructions sous la main. Je vous recommande de demander sur un site Windows si vous avez des problèmes avec cette partie de la tâche. Notez qu'une fois que vous aurez terminé, le boot loader de Windows sera défini par défaut, vous devrez donc le changer. Vous pouvez soit suivre les étapes 2 et 10-11 de la section cette procédure ou utiliser la clé USB pour démarrer sur Linux et réinstaller REFInd à partir de là. Vous pouvez aussi réparer Windows avant de réparer Linux, mais vous devrez réparer l'ESP avant de faire l'une ou l'autre réparation spécifique au système d'exploitation.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X