Datos sin copia de seguridad, tipo de partición: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF

Estaba tratando de instalar Linux en mi MacBook para la clase cuando bloqueé mi computadora, que ahora no se puede iniciar.

Hice mi partición demasiado pequeña, así que iba a eliminarla y crear una más grande. Sin embargo, Disk Utility no me permitió eliminar la partición pequeña. Seguí las instrucciones de https://apple.stackexchange.com/a/238088/236252

Sin embargo, no solo no podía eliminarlo, sino que al reiniciar me di cuenta de que mi partición principal (ubicada en el mismo disco) cambió a FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF, y no tenía opciones para arrancar. (Estoy seguro de que realicé el comando en el disco y la partición correctos)

Vi algunos hilos similares, pero mi unidad principal de arranque es la que se corrompió.

No quiero perder ningún dato. No soy el más experto en terminales, por lo que se agradece CUALQUIER ayuda, ¡y amablemente proporcionaré cualquier información adicional!

(Disco 0, la partición 2 es mi partición principal, y esa es la única que me importa)

A continuación se muestran los resultados de $diskutil list y $gpt -r show disk0 .

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí


ACTUALIZACIÓN: He seguido las instrucciones de @klanomath. En el último paso recibí el siguiente error:

Checking prerequisites
Checking the partition list
Checking for an EFI system partition
Checking the EFI system partition's size
Checking the EFI system partition's file system
Problems were found with the partition map which might prevent booting
Error: -69766: The partition map needs to be repaired because there's a problem with the EFI system partition's file system
Underlying error: 8: POSIX reports: Exec format error 

ACTUALIZACIÓN FINAL: ¡ÉXITO!

Solo quería agradecer a @klanomath por ayudarme durante todo este proceso. Pasó 11 horas en TeamViewing conmigo hasta que no solo mis archivos estuvieron accesibles, sino hasta que pude acceder a mi computadora antes de toda esta debacle (y esto fue después de 5 horas de correspondencia por correo electrónico).

Para cualquier futuro lector con este problema: ¡POR FAVOR, no se rinda, se puede arreglar!

Sí, me gustaría eliminar la partición deleteme. Miré esa publicación, pero me preocupaba que "eliminar gpt" borrara el contenido de mi disco.
¡Sí! He hecho una copia de seguridad de todo con Time Machine ahora. Nunca más
;-) ............

Respuestas (2)

Para agregar una respuesta que se ajuste exactamente a su caso, modifiqué ligeramente mi respuesta en el " duplicado " vinculado y la publiqué aquí nuevamente.


Tanto la segunda como la tercera partición de su disco interno tienen el tipo de partición incorrecto, sus datos probablemente no se perderán.

Una partición OS X de arranque (excepto Recovery HD) tiene el GUID 48465300-0000-11AA-AA11-00306543ECAC para una partición OS X estándar o el GUID 53746F72-6167-11AA-AA11-00306543ECAC para una partición CoreStorage. El FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF es un tipo de partición desconocido (pero no ninguna partición como la 000000-0000-0000...).

El primer bloque de una partición OS X estándar no contiene valores distintos de cero, el primer bloque de una partición CoreStorage contiene algunos valores distintos de cero. Para obtener los primeros 3 bloques de una partición, debe usar un sustituto de hexdump/xxd (ambos no están disponibles en el modo de recuperación/unidad de arranque del instalador de OS X). Lo mejor que he encontrado es dd if=/dev/diskXsY count=3 | vis -c.

La tabla de particiones GUID se puede modificar con gpt. gpt solo escribe en los primeros 34 y los últimos 33 bloques de un disco (512) o en los primeros 6 y últimos 5 bloques de un disco de 4k. La modificación de la tabla de particiones (incluso falsamente) no altera el contenido de ningún volumen en su disco, si no inicializa o repara un volumen/disco por pedido. Aunque puedes verificarlo.


  • Inicie en el modo de recuperación de Internet o en una unidad de inicio del instalador de OS X
  • Abra Terminal en la barra de menú Utilidades > Terminal
  • Obtenga una visión general condiskutil list
  • Obtenga una descripción general de su disco interno con el identificador de disco que se encuentra en el comando anterior. A continuación, asumo que el identificador de disco de su disco interno es disk0 (reemplácelo con el que ha encontrado en su entorno)

    gpt -r show disk0
    
  • Desmontar disk0 condiskutil umountDisk disk0
  • vis los primeros 3 bloques de la partición FFFF...:

    dd if=/dev/disk0s2 count=3 | vis -c
    
    1. Si anteriormente tenía una partición estándar, los primeros 1024 bytes solo contienen no imprimibles (ceros): \0\0... En ~Byte 1030, verá la siguiente secuencia: \0HFSJ\0

    2. Si tenía una partición CoreStorage, se muestran algunos valores distintos de cero en los primeros 512 bytes y la cadena CS ( ...\0CS\^A...):

      \^U\^D\^A\M-s\M^?\M^?\M^?\M^?\^A\0\^P\0\0\0\M-W\^A\a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^B\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Pu\M-\7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0CS\^A\0\0\0\^D\0\0\^P\0\0\0\0@\0X\M-7}\^C\0\0\0\0X\M-;}\^C\0\0\0\0X\M-?}\^C\0\0\0\0X\M-C}\^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0\^B\0\0\0006j v\^R\M-+\^U\M^[\f\M^CdG\M-y\^]...
      
  • Ahora elimine la tercera, la cuarta y la segunda partición:

    diskutil umountDisk disk0
    gpt remove -i 3 disk0
    diskutil umountDisk disk0
    gpt remove -i 4 disk0
    gpt remove -i 2 disk0
    

    Si recibe un mensaje de error como "recurso ocupado", simplemente desmonte el disco nuevamente o desmonte los volúmenes obstinados con diskutil umount disk0sX.

    Vuelva a agregar la partición de recuperación con el tipo adecuado pero con el mismo número de índice, bloque de inicio y tamaño que tenía anteriormente:

    gpt add -i 3 -b 227212504 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC disk0
    

    Vuelva a agregar la partición principal con el tipo adecuado pero con el mismo número de índice, bloque de inicio y tamaño que tenía anteriormente:

    Ya sea una partición OS X normal (si ha encontrado los rastros típicos de una partición normal en el dd ... vispaso):

    gpt add -i 2 -b 409640 -s 226802864 -t 48465300-0000-11AA-AA11-00306543ECAC disk0
    

    o (si ha encontrado los rastros típicos de una partición CoreStorage):

    gpt add -i 2 -b 409640 -s 226802864 -t 53746F72-6167-11AA-AA11-00306543ECAC disk0
    
  • Su disco finalmente debería verse así si ha encontrado una partición OS X estándar:

        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  226802864      2  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
    227212504    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC        
    228482040    8496103
    236978143         32         Sec GPT table
    236978175          1         Sec GPT header
    

    o esto, si ha encontrado un volumen de CoreStorage:

        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  226802864      2  GPT part - 53746F72-6167-11AA-AA11-00306543ECAC
    227212504    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC        
    228482040    8496103
    236978143         32         Sec GPT table
    236978175          1         Sec GPT header
    
  • Finalmente verifique/repare el disco con diskutil verifyDisk disk0y/o diskutil verifyVolume disk0s2. Si se necesita una reparación, use reparar (en lugar de verificar) como prefijo en los comandos anteriores, pero comuníquese conmigo antes de repararlo y envíeme el mensaje de error .


Investigaciones posteriores a través de sesiones de TeamViewer revelaron que la partición EFI y la partición Recovery HD están dañadas. El volumen principal está encriptado. Recovery HD contiene una clave intermedia especial de FileVault. Si falta la clave, el sistema principal no se iniciará. Sin embargo, era posible desbloquear la unidad con diskutil cs unlockVolume ....

Después de instalar un macOS completo en una memoria USB y arrancarlo, la partición EFI y el HD de recuperación de otra unidad que no es de FileVault (en realidad, las de una Sierra VM) se agregaron a la unidad rota. Aún arrancado desde la memoria USB, el volumen de FileVault se revirtió a un volumen estándar haciendo clic con el botón derecho en el volumen en el Finder, eligiendo "Descifrar volumen" e ingresando una contraseña de usuario válida. Tiene que ser la contraseña de una cuenta de usuario elegible en el volumen de FileVault. Otros métodos para descifrar el volumen como diskutil cs revert lvUUIDo diskutil cs decryptVolume lvUUID(probado solo en una máquina virtual) no parecían funcionar. Sin embargo, esto podría ser una restricción de las máquinas virtuales.

Para expandir la partición principal (disk0s2) al tamaño completo, use la Utilidad de Discos o el diskutil resizeVolume ...comando.

Inicialmente, el volumen no aparecía en Preferencias del sistema> Disco de inicio, pero altal iniciar la Mac se reveló el volumen principal. Esto probablemente volvió a bendecir boot.efi del volumen correctamente. El volumen (ahora estándar) vuelve a aparecer en el disco de inicio.

Gracias por tomarse el tiempo para ayudar. Solo quería dejar esto muy claro: en su publicación anterior, para su séptima viñeta, cuando dice "ahora elimine la tercera, la cuarta y la segunda partición" con "eliminar gpt", ¿no borrará eso mis datos en la segunda partición (que es la que me importa)?
¡Lo siento, me lo perdí! Estoy un poco frenético en este momento
Recibí un error en el último paso al intentar verificar disk0. 'Error: -69766: el mapa de partición debe repararse porque hay un problema con el sistema de archivos de la partición del sistema EFI. Error subyacente: 8: Informes POSIX: error de formato exe'
@HalfwayThere Este es un error feo, pero su MacBook aún puede restaurarse a un estado de arranque. Solo intenta arrancarlo. El error de EFI es probablemente el resultado de la instalación de Linux y debe resolverse con otras herramientas/en un segundo paso...
¿Debo ejecutar el comando verificarVolume antes de intentar reiniciarlo?
+1 ¡Esta es una gran respuesta! No solo resuelve el problema, sino que también educa a los usuarios en el camino. ¡Realmente te has esforzado por ayudar al OP y espero que obtengas muchos más votos para esto! :)
@klanomath tuvo exactamente el mismo problema, hizo exactamente lo que le dijo. Pero ahora, cuando intento verificar mi disco, muestra el error 69846 sistema de archivos no reconocido. ¿Qué hacer ahora?
@BiswadeepKBanik Probablemente malinterpretó algunos resultados de diskutil/gpt y estableció los límites de partición incorrectos. Sin más detalles no puedo resolver tu problema. Haga otra pregunta o invíteme a una sesión de TeamViewer...
¿Qué pasa si las particiones se eliminaron con gpt? ¿Cómo puede encontrar los límites nuevamente para volver a agregarlos?
¿Qué hacer si no hay "rastros típicos" de una partición estándar o CoreStorage? De hecho, tenía al menos 3 particiones en mi disco, pero después de intentar desinstalar Windows, la partición con macOS ahora tiene el GUID FFFFFF... ¿Es posible analizar la salida dd | visa mano? ¿Hay alguna forma de mostrar esta salida como hexadecimal?

¡ Este problema también puede ocurrir durante una sesión viva de APFS High Sierra ! Recibí este problema ayer, después de hacer cambios con la aplicación y los diskutilcomandos de Disk Utility, encontré esto:

    sh-3.2# diskutil list
    /dev/disk0 (internal, physical):
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      GUID_partition_scheme                        *500.3 GB   disk0
       1:                        EFI EFI                     209.7 MB   disk0s1
       2: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF               60.0 GB    disk0s2

    /dev/disk1 (synthesized):
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      APFS Container Scheme -                      +60.0 GB    disk1
                                     Physical Store disk0s2
       1:                APFS Volume APPLESSD                47.1 GB    disk1s1
       2:                APFS Volume Preboot                 19.4 MB    disk1s2
       3:                APFS Volume Recovery                517.8 MB   disk1s3
       4:                APFS Volume VM                      1.1 GB     disk1s4

    sh-3.2# gpt -r show /dev/disk0
          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  117111080      2  GPT part - FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
      117520720  859584307         
      977105027         32         Sec GPT table
      977105059          1         Sec GPT header

No creo que se reinicie en esa configuración (¿o tal vez con la tabla de copia de seguridad GPT? Ni idea). Gracias a la explicación anterior, pude resolver el problema durante la sesión en vivo, pero tuve que usar una solución ligeramente diferente ( esta solución solo funciona con SIP deshabilitado, si está habilitado, deberá reiniciar, deshabilitar y usar la solución anterior) . De todos modos , este problema tal vez esté relacionado con SIP deshabilitado, por lo que no ocurrirá en SIP habilitado, no lo sé.)

Incluso disk0sin montar, parece gptque no permitirá modificar el GPT durante una sesión en vivo:

sh-3.2# gpt remove -i 2 disk0
gpt remove: unable to open device 'disk0': Resource busy

Entonces, en su lugar, utilicé una herramienta de terceros gdisk(la obtuve a través de homebrew) para modificar el tipo de disk0s2:

sh-3.2# gdisk /dev/disk0
GPT fdisk (gdisk) version 1.0.3

Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): i
Partition number (1-2): 2
Partition GUID code: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF (Unknown)
Partition unique GUID: B40FA371-D92C-4EBF-B846-B0A9FB6DCD71
First sector: 409640 (at 200.0 MiB)
Last sector: 117520719 (at 56.0 GiB)
Partition size: 117111080 sectors (55.8 GiB)
Attribute flags: 0000000000000000
Partition name: 'Apple_HFS_Untitled_2'

Command (? for help): t
Partition number (1-2): 2
Current type is 'Unknown'
Hex code or GUID (L to show codes, Enter = af00): 7C3457EF-0000-11AA-AA11-00306543ECAC    
Changed type of partition to 'Unknown'

Command (? for help): i
Partition number (1-2): 2
Partition GUID code: 7C3457EF-0000-11AA-AA11-00306543ECAC (Unknown)
Partition unique GUID: B40FA371-D92C-4EBF-B846-B0A9FB6DCD71
First sector: 409640 (at 200.0 MiB)
Last sector: 117520719 (at 56.0 GiB)
Partition size: 117111080 sectors (55.8 GiB)
Attribute flags: 0000000000000000
Partition name: 'Apple_HFS_Untitled_2'

Command (? for help): w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/disk0.
Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Warning: The kernel may continue to use old or deleted partitions.
You should reboot or remove the drive.
The operation has completed successfully.

Comprobándolo :

sh-3.2# gpt -r show /dev/disk0
      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  117111080      2  GPT part - 7C3457EF-0000-11AA-AA11-00306543ECAC
  117520720  859584307         
  977105027         32         Sec GPT table
  977105059          1         Sec GPT header
sh-3.2# diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.3 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         60.0 GB    disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +60.0 GB    disk1
                                 Physical Store disk0s2
   1:                APFS Volume APPLESSD                47.1 GB    disk1s1
   2:                APFS Volume Preboot                 19.4 MB    disk1s2
   3:                APFS Volume Recovery                517.8 MB   disk1s3
   4:                APFS Volume VM                      1.1 GB     disk1s4

Luego, la última verificación con diskutil verifyDisk disk0y diskutil verifyVolume disk0s2sin advertencias o errores. Reinicio exitoso.

En realidad, puede usar el gptcomando en una sesión en vivo de High Sierra con SIP deshabilitado. Solo tienes que agregar la -fopción para que se use un bloqueo compartido.