Cree una partición del sistema EFI de arranque a partir de los archivos de firmware del instalador de macOS (.scap, .fd)

Cualquier instalador de macOS contiene una carpeta (por ejemplo, llamada EFIPayloads ) con archivos de firmware EFI llamados MP61_0116_B17_LOCKED.scap , MBP114_0172_B09_LOCKED.fd o similar.

¿Cómo se crea una partición EFI que funcione a partir de eso?

Lo que sí sé ya:

  1. La partición EFI requiere valores particulares en el GPT .

  2. Una partición EFI es un volumen FAT32 con una estructura de carpetas como esta:

    EFI
        APPLE
            EXTENSIONS
                Firmware.scap                  (always there)
            FIRMWARE                           (optional)
                EfiUpdaterApp2.efi
                MP51_0087_00B_LOCKED.fd
    

Lo que no entiendo:

  • ¿Qué archivos tomo del instalador de macOS y dónde los coloco en el volumen EFI? Por ejemplo, ¿uso el .scaparchivo que coincide con el modelo de Mac y le cambio el nombre a Firmware.scap, mientras que un .fdarchivo de coincidencia de modelo (que puede ser opcional) va a la FIRMWAREcarpeta?

  • ¿Se EfiUpdaterApp2.efinecesita para ejecutar el firmware, o es solo un remanente de un proceso de actualización de firmware anterior y se puede eliminar?

  • ¿Puedo crear una partición de arranque EFI universal , que contenga el firmware para cualquier modelo de Mac, de modo que pueda colocarlo en un disco externo y arrancar prácticamente cualquier Mac para el que haya incluido su archivo .fd o .scap?

Actualizar

Esta respuesta sugiere que los archivos en la carpeta FIRMWARE no se cargan al iniciar el sistema, sino que solo se usan para actualizar la ROM. Entonces, si la Mac en particular ya instaló el archivo en particular en su Flash ROM una vez, ya no será necesario y se puede eliminar de la partición EFI.

También hice una prueba en la que cambié el nombre de la carpeta superior "EFI" a "EFI-OFF" y reinicié una MacBook Air 2015. Esto resultó en la creación de una nueva carpeta EFI en la partición EFI con el mismo archivo Firmware.scap. Esto sugiere que ninguno de los archivos debe estar presente en el momento del arranque, al menos en las Mac recientes. Lo que significa que no hay necesidad de crear una partición EFI de arranque en absoluto. Me pregunto si todavía puede contener soporte adicional para Mac cuyas ROM de arranque no se pueden actualizar, como agregar soporte para arrancar desde volúmenes APFS , tal vez.

Fondo:

Recientemente, un amigo sobrescribió su partición de arranque EFI, mientras que su partición de arranque principal de Mac permaneció intacta. Sin esta partición EFI, la Mac ya no arrancaría.

Luego traté de reparar el daño copiando la partición EFI de mi Mac a su Mac, usando iBored (que escribí yo mismo, así que sé lo que estaba haciendo, confía en mí).

Pero eso no ayudó: la Mac aún no arrancaba.

Después de un tiempo, pensé que su Mac bastante antigua (una MacBook Pro de principios de 2009) probablemente requería un firmware EFI diferente al de la otra Mac desde la que intentamos copiar el firmware EFI.

Después de investigar un poco, encontré los archivos .fd y .scap mencionados en un instalador de macOS, lo que parece probar mi teoría. Por lo tanto, ahora me gustaría obtener más información sobre cómo encaja todo esto.

Respuestas (1)

macOS arrancará bien sin una partición EFI. A diferencia de la mayoría de los sistemas operativos, macOS almacena sus archivos de arranque dentro de la partición del sistema operativo. Las computadoras Apple se envían con firmware que puede leer particiones HFS+ (los modelos 2016 y posteriores también pueden leer volúmenes APFS de forma predeterminada), por lo que pueden leer el archivo boot.efi de la partición. Cuando actualiza su computadora a High Sierra, el firmware también se actualiza, obteniendo la capacidad de arrancar desde particiones APFS.

Su amigo probablemente hizo algo más que sobrescribir la partición EFI. Probablemente necesitará hacer una copia de seguridad de sus datos y reinstalar macOS.

La Mac del amigo arrancó bien al conectar la Mac a través del modo de destino de disco a otra Mac, y al iniciar desde esa Mac, con la tecla de opción presionada, y luego seleccionando el volumen del sistema de la Mac "incorrecta". Entonces, ¿qué más crees que podría romperse si no es el volumen macOS y no la partición EFI?
Después de buscar un poco en Google, descubrí que las MacBook Pro entre 2008 y 2009 podrían tener un defecto con la GPU. ¿Intentaste arrancar en modo seguro?
Tiene razón acerca de no necesitar los archivos en la partición EFI: acabo de borrar la partición EFI en mi MacBook Air 2015. Después de eso, todavía arranca. Sin embargo, la Mac del amigo era un modelo de 2009 que tenía High Sierra instalado. Por eso, creo que la parte EFI contenía el soporte APFS del que carece la ROM de arranque.
Ni siquiera llegamos tan lejos, ya que incluso mantener presionada la tecla Opción no presentaría ninguna opción de arranque. Entonces, ¿sabes algo sobre para qué sirven los archivos de firmware, en general? ¿Por qué incluso el MB Air 2015 los tendría, si no son necesarios para arrancar?
No sé cómo se realizan las actualizaciones de firmware de bajo nivel, pero creo que reinstalar el sistema operativo puede solucionar el problema. La reinstalación del sistema operativo no borra el disco, solo reinstala los archivos del sistema.
El objetivo de esta pregunta es cómo evitar tener que volver a instalar el sistema, es decir, mantener intacto el volumen de arranque. No pudimos agregar otra partición para eso porque el disco no tenía suficiente espacio libre para otra instalación de macOS.
No es necesario agregar otra partición. Simplemente instale macOS High Sierra en la partición macOS existente desde una unidad flash macOS de arranque. Probablemente tampoco necesite mucho espacio libre.
Está bien. Todavía me gustaría entender el propósito y la configuración de estos archivos EFI. Su respuesta es útil en este problema en particular que tuve, pero no responde la pregunta real que también podría ser interesante para otros, así que esperaré para aceptar otra respuesta que surgirá, con suerte.