¿Cómo arreglar la partición EFI rota?


24

Tengo un iMac con OSX Lion. También instalé bootcamp y Windows 7. Durante la instalación de Windows 7 no presté mucha atención y eliminé y formateé la partición EFI.

Realmente no me di cuenta de la importancia de esto ya que la máquina continuó funcionando bien, arrancando tanto en Windows como en OSX.

Me di cuenta de que las actualizaciones de firmware EFI no se pudieron instalar, pero no le hice caso.

Sin embargo, ahora quiero instalar Mountain Lion y hay muchos problemas. Mountain Lion no se instalará sin una partición EFI válida.

Aquí está mi tabla de particiones.

   #:                       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

Como puede ver, he intentado arreglar la partición EFI con el siguiente comando:

newfs_hfs -v EFI / dev / disk0s1

Esto no parece crear el tipo correcto de partición, creó un Apple_HFS en lugar de EFI.

Mi pregunta es (sin formatear el disco) ¿cómo creo una partición EFI?

Gracias rico


Consulte también esta respuesta para cambiar el tipo de partición: apple.stackexchange.com/a/342139/14586
mivk

Respuestas:


31

Puede volver a crear la partición del sistema EFI (ESP) con la gptherramienta de línea de comandos. Debería comenzar en el sector 40, y debería tener 409600 sectores (exactamente 200MiB) de largo. El tipo de entrada GPT debe ser C12A7328-F81F-11D2-BA4B-00A0C93EC93B, y si tiene un MBR híbrido, el tipo debe ser EE. El formato es en realidad un subconjunto de FAT, no HFS +. Puede leer el GPT usando el comando sudo gpt -r show disk0en una ventana de Terminal, esto produce una salida que se parece a esto:

      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

Puede ver la partición EFI correcta en el índice 1. Si esa línea no coincide exactamente, la forma más fácil es eliminar la partición en su lugar y volver a crearla.

Asegúrese de saber lo que está haciendo antes de continuar: puede perder datos si comete un error.

No puede editar la tabla de particiones gptmientras las particiones de la unidad están montadas, por lo que deberá iniciar desde otra unidad (por ejemplo, una memoria USB con el instalador OSX) o ejecutar la Mac en modo de disco de destino y realizar la partición desde otro mac Es posible que deba desmontar cualquier volumen montado automáticamente usando diskutil unmountDisk disk0antes de continuar, y entre comandos .

Para eliminar su partición EFI "incorrecta", ejecute este comando:

sudo gpt remove -i 1 disk0

Asegúrese de que disk0 sea realmente el disco que desea cambiar: los números pueden cambiar entre reinicios. Además, esto solo funcionará si ya tiene una partición que no sea ESP en el lugar de la ESP; de lo contrario, ¡eliminar la partición 1 podría ser desastroso! En este caso, deberá mover los índices, ya que creo que el ESP debe tener el índice 1. Por lo que parece, esto no será necesario en su caso.

Una vez eliminado, vuelva a agregar la partición con el diseño correcto y escriba:

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

Esto debería resolver la partición en sí, pero como ha creado una partición HFS en su lugar, también debe corregir su formato.

Apple documenta el formato de la partición del sistema EFI aquí . Como puede ver, recomiendan clonar un ESP existente en lugar de recrear el sistema de archivos newfs_msdos. Si tiene una unidad externa con una tabla de particiones GPT (el dispositivo de instalación OSX debería tenerla), puede clonar eso.

Asegúrese de tener el disco y los números de partición de la manera correcta o puede sobrescribir los datos:

Si disk1 es su unidad externa, y contiene un ESP como primera partición (disk1s1) y disk0 es la unidad cuyo ESP (disk0s1) desea solucionar, ejecute este comando:

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

Esto copiará cada bloque individual de ESP de disk1 y sobrescribirá el bloque correspondiente en ESP de disk0 con él.

Alternativamente, apuesta con newfs_msdos.


Gracias por la respuesta muy detallada. Eventualmente logré solucionar mi problema usando iParition. Sin embargo, leer su método parece ser el método exacto que estaba buscando si iParition no existiera. Gracias de nuevo, estoy marcando esto como la respuesta correcta.
Rico

Este método funcionó muy bien para mí en 10.6 después de que GParted clonó el ESP para bloquear 2048 en un SSD. Arrancando un disco de instalación y siguiendo lo anterior, solía ddalmacenar el ESP clonado en un archivo antes de eliminarlo, volver a crearlo y volver a escribirlo. ¡Gracias!
Nick Westgate

Funcionó muy bien en mi mbp con disco híbrido ssd. EFI fue sobrescrito por una instalación grub y este método funcionó perfectamente para recuperarlo.
sean_m

Gracias por compartir. Para guardar la escritura, puede especificar EFI como tipo de partición en lugar del GUID: sudo gpt add -b 40 -i 1 -s 409600 -t EFI disk0

1
¿Cómo puedo cambiar los índices de las particiones para que el ESP pueda estar en el índice 1?
addison

3

Prueba esto:

  1. Copia de seguridad de la unidad en la máquina del tiempo.
  2. Reinicie, reiniciando en el disco de instalación de Lion.
  3. Vaya a Utilidad de Discos.
  4. Borrar partición.
  5. Borrar HD.
  6. Vuelva a borrar la partición nuevamente, esta vez dándole un nombre.
  7. Haz clic en HD.
  8. Verifique HD para confirmar que el mensaje de error EFI ya no aparece.
  9. Regrese a la pantalla de instalación.
  10. Elija restaurar de copia de seguridad.

2

Se encontró una solución más simple aquí: /unix//a/174522/182014

Se puede crear una partición EFI a través de GParted Live CD / USB :

  • Crear una unidad de 200 MB (todo mi espacio libre al principio):
    • Tipo: fat32
    • Etiqueta: EFI
  • Formatearlo
  • Establezca los indicadores de arranque (opción disponible solo después del formateo) en "boot, esp"

ingrese la descripción de la imagen aquí

¡Listo!


0

Prueba iPartition 3 o superior. Vaya a ver el menú y mostrar los dispositivos del sistema. Dado que le falta el EFI de 200 mb, reduzca la primera partición en el disco con suerte en 200 mb. Cree una nueva partición, luego en la ventana del inspector de discos hay pestañas. Puede elegir un tipo de sistema de archivos muy diferente. Simplemente elija Partición del sistema EFI.


0

Esto solucionó el problema para mí.

1) Copia de seguridad de la partición Bootcamp usando Winclone

2) Copia de seguridad de la unidad Mac OSX usando Carbon Copy Clone en una unidad externa

3) Instale Mountain Lion en una unidad flash o unidad externa

4) Compre una copia de iPartition, descárguela en una unidad flash o unidad externa

5) Reinicie mientras mantiene presionada la tecla Opción para obtener el menú de inicio

6) Seleccione la unidad flash o externa para arrancar

7) Extraer iPartition y ejecutar. Seleccione Ver e Inspector en el menú desplegable.

8) Seleccione Partición Bootcamp en la pestaña Partición y marque las dos casillas en la lista (Activo y Visible en Windows) y luego cierre la casilla.

9) El botón Go debe estar iluminado, de lo contrario, haga crecer un poco la partición Bootcamp. El mío es OSX de 2 TB, Windows de 500 GB en una unidad de 2,5 TB.

10) Una vez que se presiona el botón Ir, debe comenzar a procesarse; aunque es posible que deba eliminar cualquier proceso que evite que se ejecute (Hecho con el Monitor de actividad)

11) Una vez terminado, apague y retire el dispositivo de arranque externo y luego vuelva a encender la Mac. Debería arreglarse y arrancar normalmente, al menos el mío.

Estoy ejecutando un iMac 27, 3.2 GHz Intel Core i3 con 16 GB de RAM y un disco duro de 2.5 TB. La mayoría de los elementos enumerados que ya había hecho antes de la instalación de Mountain Lion, excepto una copia de seguridad actual de la unidad Bootcamp. Winclone funcionó a pesar de que Bootcamp no arrancó y el proceso de restauración generó un error al escribir el MBR. Simplemente ignoré el error y seguí adelante con el resto del proceso. Aparentemente, Mountain Lion se metió con el PMBR o el EFI e incluso no lo solucionaría, pero lo que sea que hiciera iPartition; ahora está arreglado.

*RENUNCIA**

Si bien este proceso puede haber funcionado bien para mí, ¡PUEDE NO FUNCIONAR PARA USTED! COMO CON CUALQUIER PROCESO QUE EDITE LA TABLA DE PARTITON Y LOS DATOS DE ARRANQUE, USTED TIENE LA OPORTUNIDAD DE PERDER LOS DATOS. COPIA DE SEGURIDAD DE SU UNIDAD SI DESEA MANTENER SUS DATOS.

Recomiendo encarecidamente Carbon Copy Clone para hacer una copia de seguridad de la partición OSX porque puede crear un clon de arranque que nunca he fallado.

Estoy seguro de que otros han tenido éxito en otros lugares para resolver este problema y agradezco a todos los que han publicado lo que han hecho, ya que me ayudó a resolver este problema en mi iMac.

Gracias a todos y espero que esto ayude a alguien más. (Publicado en el Foro de Apple) https://discussions.apple.com/message/19220149#19220149

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.