¿Cómo arreglar GPT roto, GUID y no se puede montar, no hay volúmenes de tipo?

9

Tengo un Macbook Pro con retina, Yosemite y un disco duro de 500 GB. Intenté instalar Windows usando Bootcamp y borré accidentalmente una partición, ahora mi Mac ya no puede arrancar. Esta es la salida de sudo gpt -r show disk0

  gpt show: disk0: Suspicious MBR at sector 0
    start       size  index  contents
        0          1         MBR
        1          1         Pri GPT header
        2         32         Pri GPT table
       34          6         
       40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
   409640  776617328      2  GPT part - FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
777026968    1269760      3  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
778296728        616         
778297344  198807552      4  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
977104896        131         
977105027         32         Sec GPT table
977105059          1         Sec GPT header

Solo necesito hacer la segunda partición en el índice 2 y escribir FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF para que se pueda iniciar nuevamente. Esta partición tiene FileVault 2 habilitado.

Pero en este momento, no tengo idea de qué hacer.

P / S: He seguido las instrucciones de @klanomath Arranque desde un disco duro externo con sistema completo de Yosemite pero en el último comando para cambiar el tipo de partición

sudo gpt add -b 409640 -s 776617328 -i 2 -t 53746F72-6167-11AA-AA11-00306543ECAC /dev/disk0

Obtuvo este error:

gpt add: /dev/disk0: Suspicious MBR at sector 0
gpt add: /dev/disk0: error: no space available on device

Esta es la salida de sudo gpt -r show /dev/disk0

   gpt show: /dev/disk0: Suspicious MBR at sector 0
     start       size  index  contents
         0          1         MBR
         1          1         Pri GPT header
         2         32         Pri GPT table
        34          6         
        40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
    409640  776617328      2  MBR part 218
 777026968    1269760      3  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
 778296728        616         
 778297344  198807552      4  MBR part 175
 977104896        131         
 977105027         32         Sec GPT table
 977105059          1         Sec GPT header

Progreso:

He ejecutado el comando sudo gpt destroy /dev/disk0

Pero cuando intenté volver a agregar la primera partición con este comando sudo gpt add -b 40 -s 409600 -i 1 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B /dev/disk0

Recibí este error de inmediato

gpt add: /dev/disk0: Suspicious MBR at sector 0
gpt add: /dev/disk0: error: no primary GPT header; run create or recover

Ahora el comando sudo gpt -r show /dev/disk0 me da esto

   gpt show: /dev/disk0: Suspicious MBR at sector 0
     start       size  index  contents
         0          1         MBR
         1     409639         
    409640  776617328      2  MBR part 218
 777026968    1269760      3  MBR part 175
 778296728        616         
 778297344  198807552      4  MBR part 175
 977104896        164

Progreso 2:

He ejecutado sudo gpt create /dev/disk0 y obtuve este error:

gpt create: /dev/disk0: Suspicious MBR at sector 0
gpt create: /dev/disk0: error: device contains a MBR

y ejecuté este comando sudo fdisk -i -a hfs /dev/disk0 para escribir un nuevo MBR y ejecuté sudo gpt create /dev/disk0 otra vez pero obtuve el mismo error gpt create: /dev/disk0: error: device contains a MBR

Ahora sudo gpt -r show /dev/disk0 me da esto

      start       size  index  contents
      0          1         MBR
      1         62         
     63  977104997      1  MBR part 175

Progreso 3 y final: D

En primer lugar, muchas gracias a @klanomath, sin la ayuda, no pude llegar tan lejos.

Ejecuté este comando sudo gpt create -fp /dev/disk0

Y este comando sudo gpt recover /dev/disk0 para obtener el encabezado GPT secundario

Después de eso, ejecuté sudo gdisk /dev/disk0 y el disco está montado y funciona correctamente

    
pregunta L N 27.12.2015 - 14:55

1 respuesta

9

El tipo de contenido de la segunda partición es incorrecto. En lugar de FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF tiene que ser 53746F72-6167-11AA-AA11-00306543ECAC.

Para editar el tipo de contenido, debe iniciar el Modo de recuperación de Internet y usar gpt . Además, se eliminará la cuarta partición (probablemente la partición "eliminada"). Por favor, compruebe que no contiene ningún dato!

Preparación:

  • Desconecte cualquier unidad externa (especialmente su unidad de copia de seguridad externa de Time Machine)
  • Reinicia al modo de recuperación de Internet presionando alt cmd R al inicio.

    Los requisitos previos son la última actualización de firmware instalada, ya sea Ethernet o WLAN (WPA / WPA2) y un enrutador con DHCP activado.
    En una línea de 50 Mbps, se tarda unos 4 minutos (presentando un pequeño globo animado) para iniciar una imagen de arranque de red que normalmente se carga desde un servidor Apple / Akamai.

    Recomiendo Ethernet porque es más confiable. Si está restringido a WIFI y el proceso de arranque falla, simplemente reinicie su Mac hasta que logre el arranque.

    Como alternativa, puede comenzar desde una unidad de disco de arranque del instalador (preferiblemente Yosemite o El Capitan) o desde una unidad de disco con un sistema completo (preferiblemente Yosemite o El Capitan). Si inicia un sistema completo e inicia sesión como administrador, debe anteponer sudo para ejecutar comandos especiales como gpt ... !

Eliminar la cuarta partición y cambiar el tipo de contenido de la segunda partición

  • Iniciado en el modo de recuperación de Internet, abra Utilidades → Terminal en la barra de menú e ingrese: diskutil list para obtener los identificadores de disco. A continuación, asumo que su disco principal tiene los identificadores de disco disk0.

  • Primero debes eliminar la cuarta partición (solo hazlo si está realmente vacío):

    gpt -r show /dev/disk0 #to get an overview
    

    Para eliminar una partición con gpt , el disco debe estar desmontado:

    diskutil unmountDisk /dev/disk0
    gpt remove -i 4 /dev/disk0 #remove the fourth partition
    
  • Luego tienes que cambiar el tipo de contenido de la segunda partición:

    diskutil unmountDisk /dev/disk0
    gpt remove -i 2 /dev/disk0 #remove the second partition
    gpt add -b StartBlock -s NumberOfBlocks -i 2 -t 53746F72-6167-11AA-AA11-00306543ECAC
    

    En tu caso:

    gpt add -b 409640 -s 776617328 -i 2 -t 53746F72-6167-11AA-AA11-00306543ECAC /dev/disk0
    
  • Ahora se le debe solicitar la frase de contraseña de FileVault. Entra.
  • Ingrese exit y salga de Terminal
  • Compruebe el volumen principal Macintosh HD para ver si hay errores
  • Salga de Utilidad de disco y reinicie a su volumen principal

Anexo: Eliminación del MBR terco

Puede usar fdisk o gpt para eliminar el MBR en el bloque 0. Si usa un usuario administrador, prepárese sudo con los comandos gpt .... .

  • Primero obtenga una vista general otra vez. Este paso es importante antes de destruir el gpt, porque es la fuente para reconstruirlo desde cero:

    gpt -r show /dev/disk0
    
  • Luego borra el gpt:

    diskutil unmountDisk /dev/disk0
    gpt destroy /dev/disk0
    
  • Crear una nueva tabla de particiones GUID:

    gpt create -f /dev/disk0
    
  • Finalmente agregue todas las particiones una por una:

    gpt add -b 40 -s 409600 -i 1 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B /dev/disk0
    gpt add -b 777026968 -s 1269760 -i 3 -t 426F6F74-0000-11AA-AA11-00306543ECAC /dev/disk0
    gpt add -b 409640 -s 776617328 -i 2 -t 53746F72-6167-11AA-AA11-00306543ECAC /dev/disk0
    

    Sugerencia : puede agregar y eliminar particiones en un orden arbitrario si mantiene el número de índice correcto. En los comandos anteriores agregué la tercera partición ( ... -i 3 ... ) antes de agregar la segunda partición ( ... -i 2 ... ). No tiene que desmontar disk0 porque las particiones i = 1 e i = 3 no contienen volúmenes montados automáticamente mientras que la segunda partición sí.

    Fallé al detectar el tipo de partición incorrecto de tu Recovery HD (la tercera partición con el número de índice 3) en la primera parte de mi respuesta. Por lo tanto utilicé:

    gpt add -b 777026968 -s 1269760 -i 3 -t 426F6F74-0000-11AA-AA11-00306543ECAC /dev/disk0
    

    arriba en lugar de wrong

    gpt add -b 777026968 -s 1269760 -i 3 -t 48465300-0000-11AA-AA11-00306543ECAC /dev/disk0 #wrong partition type of the Recovery HD
    

    para volver a agregarlo.

    Si aún recibe errores, aborde el MBR con fdisk . Si usas un usuario administrador, prepénd sudo usando los comandos fdisk ... :

    fdisk -i -a hfs /dev/disk0
    

    y agregue las entradas gpt con gpt ... descrito anteriormente.

Cambiar el tamaño del volumen principal para llenar todo el disco

Finalmente, probablemente quieras cambiar el tamaño del volumen principal para llenar todo el disco.

  • Obtenga una visión general con:

    diskutil cs list
    

    Puede tener varios grupos de volúmenes lógicos de CoreStorage, si arranca desde una unidad externa con un sistema completo. ¡Usa el adecuado!

  • Cambiar el tamaño de toda la pila:

    diskutil cs resizeStack lvUUID size #lvUUID is the UUID of the Logical Volume. Usually it's the last one listed.
    

    Al iniciarse en Yosemite, puede usar 0g para el tamaño para expandirlo. 0g es un tamaño "mágico" aquí.

    diskutil cs resizeStack lvUUID 0g
    

    Arrancado a El Capitán, debes usar un tamaño real como 500g . Si obtiene un error, use un tamaño ligeramente más pequeño como 499g o 499500m .

    diskutil cs resizeStack lvUUID 500g
    
respondido por el klanomath 27.12.2015 - 15:51

Lea otras preguntas en las etiquetas