24 votes

Comment réparer une partition EFI cassée?

J'ai un iMac fonctionnant sous OSX Lion. J'ai également installé bootcamp et Windows 7. Pendant l'installation de Windows 7, je n'étais pas complètement attentif et j'ai supprimé et formaté la partition EFI.

Je n'ai pas vraiment réalisé l'importance de cela car la machine continuait à fonctionner correctement, démarrant à la fois sous Windows et OSX.

J'ai remarqué que les mises à jour du firmware EFI échouaient à s'installer, mais je n'y ai pas prêté attention.

Cependant, maintenant je veux installer Mountain Lion et j'ai tout un tas de problèmes. Mountain Lion ne s'installera pas sans une partition EFI valide.

Voici ma table de partitions.

   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                  Apple_HFS EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD            799.0 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
   4:       Microsoft Basic Data BOOTCAMP                200.3 GB   disk0s4

Comme vous pouvez le voir, j'ai essayé de réparer la partition EFI avec la commande suivante :

newfs_hfs -v EFI /dev/disk0s1

Cela ne semblait pas avoir créé le bon type de partition, il a créé une Apple_HFS au lieu de EFI.

Ma question est (sans formater le disque) comment créer une partition EFI ?

Merci Rich

0 votes

Voir également cette réponse pour changer le type de partition : apple.stackexchange.com/a/342139/14586

32voto

pmdj Points 1805

Vous pouvez recréer la partition du système EFI (ESP) en utilisant l'outil en ligne de commande gpt. Il devrait commencer au secteur 40, et il devrait être long de 409600 secteurs (exactement 200MiB). Le type de l'entrée GPT devrait être C12A7328-F81F-11D2-BA4B-00A0C93EC93B, et si vous avez un MBR hybride, le type là devrait être EE. Le format est en fait un sous-ensemble de FAT, pas de HFS+. Vous pouvez lire le GPT en utilisant la commande sudo gpt -r show disk0 dans une fenêtre de Terminal, cela produit une sortie qui ressemble à ceci:

      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34          6         
         40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
     409640  447801712      2  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  448211352    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
  449480888   40753831         
  490234719         32         Sec GPT table
  490234751          1         Sec GPT header

Vous pouvez voir la bonne partition EFI à l'index 1. Si cette ligne ne correspond pas exactement, la manière la plus simple est de supprimer la partition à sa place et de la recréer.

Assurez-vous de savoir ce que vous faites avant de continuer d'ici - vous pourriez perdre des données si vous faites une erreur.

Vous ne pouvez pas éditer la table des partitions en utilisant gpt pendant que les partitions sur le disque sont montées, donc vous devrez démarrer à partir d'un autre disque (par exemple, une clé USB avec l'installateur OSX) ou exécuter le mac en mode disque cible et faire le partitionnement depuis un autre mac. Vous devrez peut-être démonter tout volume monté automatiquement en utilisant diskutil unmountDisk disk0 avant de continuer, et entre les commandes.

Pour supprimer votre "mauvaise" partition EFI, exécutez cette commande:

sudo gpt remove -i 1 disk0

Assurez-vous que disk0 est vraiment le disque que vous voulez modifier - les numéros peuvent changer entre les redémarrages. De plus, cela ne fonctionnera que si vous avez déjà une partition non-ESP à la place de l'ESP - sinon, supprimer la partition 1 pourrait être catastrophique! Dans ce cas, vous devrez décaler les indices, car je pense que l'ESP doit avoir l'index 1. Au vu de cela, cela ne sera probablement pas nécessaire dans votre cas.

Une fois supprimée, réajoutez la partition avec la mise en page et le type corrects:

sudo gpt add -b 40 -i 1 -s 409600 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B disk0

Cela devrait résoudre le problème de la partition elle-même, mais comme vous avez créé une partition HFS à sa place, vous devez également corriger son format.

Le format de la partition du système EFI est documenté par Apple ici. Comme vous pouvez le voir, ils recommandent de cloner un ESP existant plutôt que de recréer le système de fichiers avec newfs_msdos. Si vous avez un disque externe avec une table de partitions GPT (la clé d'installation OSX devrait l'avoir), vous pouvez le cloner.

Assurez-vous d'avoir vos numéros de disque et de partition dans le bon sens sinon vous risquez d'écraser des données:

Si disk1 est votre disque externe, et qu'il contient un ESP comme première partition (disk1s1) et que disk0 est le disque dont vous souhaitez corriger l'ESP (disk0s1), exécutez cette commande:

sudo dd if=/dev/disk1s1 of=/dev/disk0s1

Cela copiera chaque bloc du ESP du disque1 et écrasera le bloc correspondant du ESP du disque0 avec.

Sinon, prenez un risque avec newfs_msdos.

0 votes

Merci pour la réponse très détaillée. J'ai finalement réussi à résoudre mon problème en utilisant iPartition. Cependant, en lisant votre méthode, il semble que ce soit la méthode exacte que je recherchais si iPartition n'avait pas existé. Merci encore, je marque cela comme la réponse correcte.

0 votes

Cette méthode a très bien fonctionné pour moi sur 10.6 après que GParted ait cloné l'ESP sur le bloc 2048 sur un SSD. En démarrant depuis un disque d'installation et en suivant ce qui précède, j'ai utilisé dd pour stocker l'ESP cloné dans un fichier avant de le supprimer, le recréer et le réécrire. Merci!

0 votes

A bien fonctionné sur mon mbp avec un disque hybride ssd. EFI a été écrasé par une installation de grub et cette méthode a parfaitement fonctionné pour le ramener.

3voto

Noumenon Points 323

Essayez ceci :

  1. Sauvegardez le lecteur sur Time Machine.
  2. Redémarrez, en redémarrant sur le disque d'installation de Lion.
  3. Allez dans Utilitaire de disque.
  4. Effacez la partition.
  5. Effacez le disque dur.
  6. Ré-écrivez la partition à nouveau, cette fois en lui donnant un nom.
  7. Cliquez sur le disque dur.
  8. Vérifiez le disque dur pour confirmer que le message d'erreur EFI n'apparaît plus.
  9. Retournez à l'écran d'installation.
  10. Choisissez de restaurer à partir de la sauvegarde.

2voto

Une solution plus simple a été trouvée ici: https://unix.stackexchange.com/a/174522/182014

Une partition EFI peut être créée via GParted Live CD/USB:

  • Créez un disque de 200 Mo (tout mon espace libre au début):
    • Type: fat32
    • Étiquette: EFI
  • Formatez-le
  • Définissez les drapeaux de démarrage (option disponible uniquement après le formatage) sur "boot, esp"

entrer la description de l'image ici

Prêt!

0voto

Jesse Points 1

Essayez iPartition 3 ou version supérieure. Allez dans le menu Affichage et affichez les dispositifs système. Comme il manque les 200 Mo de l'EFI, réduisez la première partition sur le disque, idéalement de 200 Mo. Créez une nouvelle partition, puis dans la fenêtre d'inspection du disque il y a des onglets. Vous pouvez choisir parmi de nombreux types de systèmes de fichiers. Choisissez simplement la Partition Système EFI.

0voto

kc5mhb Points 1

Cela a résolu le problème pour moi.

1) Sauvegardez la partition Bootcamp à l'aide de Winclone

2) Sauvegardez le disque Mac OSX en utilisant Carbon Copy Clone sur un disque externe

3) Installez Mountain Lion sur une clé USB ou un disque externe

4) Achetez une copie d'iPartition, téléchargez-la sur une clé USB ou un disque externe

5) Redémarrez en maintenant la touche Option enfoncée pour accéder au menu de démarrage

6) Sélectionnez la clé USB ou le disque externe à partir duquel démarrer

7) Extrayez iPartition et exécutez-le. Sélectionnez Afficher et Inspecteur dans le menu déroulant.

8) Sélectionnez la partition Bootcamp sous l'onglet Partition et cochez les deux cases de la liste (Active et Visible in Windows) puis fermez la boîte.

9) Le bouton Go devrait être allumé, sinon agrandissez un peu la partition Bootcamp. La mienne est de 2 To pour OSX, 500 Go pour Windows sur un disque de 2,5 To.

10) Une fois que le bouton Go est pressé, le processus doit démarrer; bien que vous deviez peut-être arrêter tout processus qui l'empêche de s'exécuter (faites-le avec le Moniteur d'activité)

11) Une fois terminé, éteignez et retirez le périphérique de démarrage externe, puis rallumez le Mac. Il devrait être réparé et démarrer normalement - du moins pour moi.

Je possède un iMac 27 pouces, 3,2 GHz Intel Core i3 avec 16 Go de RAM et un disque dur de 2,5 To. La plupart des éléments mentionnés avaient déjà été réalisés avant l'installation de Mountain Lion, à l'exception d'une sauvegarde actuelle de la partition Bootcamp. Winclone a fonctionné même si Bootcamp ne démarrait pas et le processus de restauration généré une erreur lors de l'écriture du MBR. J'ai simplement ignoré l'erreur et j'ai continué avec le reste du processus. Apparemment, Mountain Lion a perturbé le PMBR ou l'EFI et même rEFIt n'a pas pu le réparer mais quoi que iPartition ait fait; maintenant c'est réparé.

*AVIS LÉGAL**

Alors que ce processus a bien fonctionné pour moi, IL PEUT NE PAS FONCTIONNER POUR VOUS! COMME AVEC TOUT PROCESSUS QUI MODIFIE LA TABLE DES PARTITIONS ET LES DONNÉES DE DÉMARRAGE, VOUS RISQUEZ DE PERDRE DES DONNÉES. SAUVEGARDEZ VOTRE DISQUE SI VOUS SOUHAITEZ CONSERVER VOS DONNÉES.

Je recommande fortement Carbon Copy Clone pour sauvegarder la partition OSX car il peut créer un clone démarrable qui n'a jamais échoué.

Je suis sûr que d'autres ont réussi ailleurs à résoudre ce problème et je remercie tous ceux qui ont posté ce qu'ils ont fait car cela m'a aidé à résoudre ce problème sur mon iMac.

Merci à tous et j'espère que cela aidera quelqu'un d'autre.

(Posted in Apple Forum) https://discussions.apple.com/message/19220149#19220149

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X