Accidentalmente convertido de un disco básico a uno dinámico

Tengo una MacBook Pro (retina de finales de 2013 de 13 pulgadas), así que instalé Windows 7 usando bootcamp y todo estuvo bien. Luego necesitaba crear una partición FAT16 de 32 MB, cuando Windows me pidió que la convirtiera a un disco dinámico, presioné enter por error. Cuando reinicié la PC, la opción de Mac había desaparecido y si intentaba iniciar Windows, BSOD y se reiniciaría.

Leí algunas guías sobre el uso de TestDisk, así que traté de hacer eso. Arranqué con un Xubuntu LiveCD, luego escaneé y encontré una partición HFS que parecía ser la partición que estaba buscando, así que la configuré como [P]primaria y la escribí en el disco, pero aún así no arrancó.

¡Por favor ayuda! No sé qué hacer, volví a ejecutar TestDisk con Deep Search y cargué el archivo de registro: http://pastebin.com/kpzYuFDp

No me importan mis datos de Windows, solo quiero recuperar mi partición de Mac.

PD: Leí que podría hacer algo con pdisk (supongo que esto es editar manualmente los datos de la tabla de particiones), pero no tengo idea de cómo hacerlo.

Según la salida solicitada de fdisk, gpt y diskutils:

fdisk /dev/disk0
Disk: /dev/disk0    geometry: 14751/255/63 [236978176 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: EE    0   0   2 - 1023 254  63 [         1 -  236978175] <Unknown ID>
 2: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
 3: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
 4: 00    0   0   0 -    0   0   0 [         0 -          0] unused      

gpt -r show /dev/disk0
      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34   30666498        
   30666532  138412290      1  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  169078822   67899321        
  236978143         32         Sec GPT table
  236978175          1         Sec GPT header

diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *121.3 GB   disk0
   1:                  Apple_HFS                         70.9 GB    disk0s1
Espero que haya realizado una copia de seguridad de todos los datos de Windows porque Windows en sí mismo no proporciona una forma no destructiva de convertir discos dinámicos en discos básicos y, básicamente, está pensando en empezar de nuevo. Puede haber una utilidad de terceros que pueda hacerlo de forma no destructiva, pero no estoy seguro de cómo lo ejecutaría, ya que no puede iniciar Windows ahora. Supuestamente, EaseUS Partition Master puede hacerlo, sin embargo, no estoy seguro de cómo podrá ejecutarlo.
@klanomath Pegó el resultado a mi pregunta. user3439894 No me importan mis datos de Windows, solo necesito recuperar mis datos de Mac.
@ user167173 ¿Recuerda los tamaños aproximados de OS X y la partición de Windows? ¿Y tiene una memoria USB vacía o un disco externo con al menos 16 GB o una memoria USB/disco externo con OS X ya instalado?
@klanomath La partición de Windows era de 40 GB, la partición de OS X era el resto (diría que 70-80 GB). Sí, tengo una unidad externa de 1 TB. No, no tengo una memoria USB con OS X. ¡Gracias de antemano!
@ user167173 Ya respondí una pregunta similar anteriormente. Es un procedimiento de recuperación complejo. ¿Tiene una conexión a Internet decente y está contento de que lo apoye a través de Teamdrive si es necesario? ¿Dónde vive (solo zona horaria)?
Mi respuesta está aquí . No es una respuesta 1:1. Algunos pasos no son necesarios en su caso; así que no empieces de inmediato. Voy a escribir una respuesta por separado. Dado que algunos pasos en mi respuesta dependen de sus interacciones/respuestas, no puedo escribir una respuesta final de inmediato.
@klanomath Oye, mi zona horaria es GMT+3 y tengo una conexión de 60 Mbit y estoy de acuerdo con que me apoyes.
@ user167173 ¿Tiene una copia de seguridad de su volumen OS X principal (desaparecido)? ¿Qué tipo de sistema de archivos tiene el volumen principal en la unidad externa y tiene alrededor de 130 GB de espacio libre si el sistema de archivos es HFS+?
@klanomath ¿Tienes Skype o Jabber?
@klanomath Actualmente estoy creando una imagen del SSD en mi Mac usando Xubuntu Live y dd. La unidad externa actualmente está dividida en 256 GB ext3, el resto (alrededor de 700 GB) como sin asignar.
@klanomath por favor hazlo. Creo que sería más fácil para nosotros charlar allí.
@klanomath Parece que no tengo suficiente reputación para chatear.
@klanomath No puedo chatear, dice que necesito 20 representantes.
@klanomath Puedo ver lo que está escribiendo, pero no puedo chatear conmigo mismo porque no necesito un representante. Creé una sala de chat instantánea tlk.io/klanomath Podemos publicar la transcripción aquí después de todo.
@klanomath Todavía no puedo chatear en el enlace que publicaste.

Respuestas (1)

La administración de discos de Windows ha sobrescrito la tabla de particiones GUID con algo desconocido. Por lo general, esto solo afecta la tabla de particiones, pero no el contenido de su disco (¡aunque parece que se ha ido)! Se debe restaurar una tabla de particiones GUID adecuada.

El obstáculo particular aquí es: el OP no tiene una memoria USB ni una segunda Mac.

Preparación:

  • Haga una copia de seguridad de todo el SSD en una unidad externa utilizando un Linux Live DVD con dd if=/dev/sda of=/path/to/file. ¡El tamaño del archivo resultante debe ser de 121,3 GB o 113 GiB!
  • Reinicie el modo de recuperación de Internet presionando alt cmd Ral 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 terráqueo animado) para iniciar una imagen de inicio de red de recuperación 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 arranque correctamente.

    Alternativamente, puede comenzar desde una memoria USB de instalación de arranque (preferiblemente Yosemite o El Capitan) o una memoria USB que contenga un sistema completo (preferiblemente Yosemite o El Capitan). Si inicia un sistema completo e inicia sesión como administrador, debe anteponer sudopara ejecutar algunos comandos como gpt ...o newfs_hfs ...!

Modificar la tabla de particiones GUID

  • Abra Utilidades->Terminal en la barra de menú, ingrese diskutil listy gpt -r show /dev/diskX(con diskX: el identificador de disco de su disco interno (probablemente disk0)) para obtener una descripción general. En los siguientes comandos, asumo que el identificador del disco es disk0.

    Debería obtener los siguientes listados:

    gpt -r show /dev/disk0
          start       size  index  contents
              0          1         PMBR
              1          1         Pri GPT header
              2         32         Pri GPT table
             34   30666498        
       30666532  138412290      1  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
      169078822   67899321        
      236978143         32         Sec GPT table
      236978175          1         Sec GPT header
    
    diskutil list
    /dev/disk0
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      GUID_partition_scheme                        *121.3 GB   disk0
       1:                  Apple_HFS                         70.9 GB    disk0s1
    
    # disk1-disk13 are volatile disks belonging to Internet Recovery Mode
    
  • Ahora elimine la partición HFS+ falsa:

    gpt remove -i 1 /dev/disk0
    
  • Agregue la partición EFI en la tabla de particiones:

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

Ahora puede instalar OS X en una nueva partición, sin sobrescribir sus antiguas particiones de OS X, e intentar detectar los tamaños de las particiones antiguas con las herramientas adecuadas (como wxHexEditor) o puede adivinar el contenido antiguo de la tabla de particiones GUID ( con la ayuda del resultado TestDisk - no recomendado)


Instalar un nuevo OS X

Esto destruirá el contenido de la(s) partición(es) de Windows.

  • Agregue una nueva partición en la (antigua) parte OS X de su disco para protegerla.

    gpt add -b 409640 -i 2 -s 179590360 -t FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF /dev/disk0
    

    Esto podría ser superfluo.

  • Agregue nuevas particiones en la (antigua) parte de Windows de su disco. La primera (i=4) es una nueva partición del sistema, la segunda (i=5) una partición de recuperación. La nueva partición OS X comienza en ~ 91 GB y tiene un tamaño de ~ 26 GB, lo que no debería afectar a la antigua partición OS X (oculta, "perdida"):

    gpt add -b 180000000 -i 4 -s 50000000 -t 48465300-0000-11AA-AA11-00306543ECAC /dev/disk0
    gpt add -b 230000000 -i 5 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC /dev/disk0
    
  • Ahora tienes que formatear la nueva partición de 26 GB:

    diskutil list
    newfs_hfs -v "TempSystem" -J /dev/disk0s4 #use the proper partition found in diskutil list. It should have a size of ~26 GB
    newfs_hfs -v "Recovery HD" -J /dev/disk0s5 #use the proper partition found in diskutil list. It should have a size of ~650 MB
    diskutil mount /dev/disk0s4
    
  • Sal de la Terminal ingresando exity sal de ella.
  • Abra Restore OS X e instale OS X en la partición TempSystem .
  • Configure el nuevo sistema y habilite el acceso a Internet. No inicialice ningún volumen "desconocido" si se le solicita.
  • Habilitar el usuario root
  • Cerrar sesión como administrador e iniciar sesión como root
  • Descargar e instalar wxHexEditor

Detecte el bloque de inicio y el tipo de su antiguo volumen OS X y el bloque de inicio de su HD de recuperación antiguo con wxHexEditor:

El enfoque es similar al de mi respuesta aquí: HFS + número no válido de bloques de asignación

Dado que el bloque de inicio de una partición principal y el tamaño de una partición de recuperación tienen tamaños/límites fijos, normalmente puede calcular las entradas de partición GUID adecuadas de su(s) partición(es) antigua(s).

Sugerencia: mientras trabaja con wxHexEditor, no use copiar y pegar. ¡Ingrese todo manualmente! Puede escribir accidentalmente directamente en su disco.

  • ¿Partición JHFS+ o CoreStorage?

    Primero debe determinar si tenía una partición JHFS+ o CoreStorage en el número de índice 2.

    Abre la Calculadora. Abra wxHexEditor. Comprueba que trabajas en modo de solo lectura ("Opciones" -> "Modo de archivo" -> "Solo lectura"). En la barra de menú, vaya a "Dispositivos" -> "Abrir dispositivo de disco" -> elija el número de disco apropiado. Probablemente sea disk0. El disco debe tener más particiones (disk0s1 - disk0s5). Intente organizar la ventana de wxHexEditor como en los ejemplos a continuación con líneas rojas rectas.

    Luego presione el botón "Ir a compensación" (marcado con el círculo verde) e ingrese 409640 exactamente como en la imagen a continuación. A veces tienes que hacer eso dos veces para saltar al sector correcto. Vuelva a verificar el sector correcto ingresando el desplazamiento (marcado en rojo) en la Calculadora y divídalo entre 512.

    Los primeros 3 sectores de una partición CoreStorage se ven así:

    cs

    Los primeros 3 sectores de una partición JHFS+ se ven así:

    jhfs+

    Si obtiene una imagen fundamentalmente diferente, deténgase aquí.

  • ¿Dónde comienza la partición Recovery HD?

    Esa es probablemente la parte más difícil porque tienes que encontrar una cadena que no sea muy específica. Salta casi al principio de tu nueva partición principal (en tu caso al sector 179999900)

    Luego ingrese "HFSJ" como en la imagen a continuación, busque esta cadena varias veces y hágala legible. notas manuscritas de las distintas compensaciones. Para restaurar su antiguo OS X, debe iniciar el modo de recuperación de Internet más tarde y se perderán todos los hallazgos en pantalla en el OS X temporal actual.

    La razón para buscar la cadena "HFSJ" es que todos los volúmenes HFSJ+ contienen esta cadena en el tercer sector de su partición. ¡La cadena mágica puede aparecer hasta 40 veces desordenada en ~ 10000 sectores! A veces es realmente difícil encontrar el sector adecuado. Un segundo indicador para el comienzo de Recovery HD es al menos un bloque de 0xFF en el décimo sector (o bloque (MagicString)+7) de la partición.

    rhh

    Puede obtener dos resultados realmente diferentes según el tipo de partición:

    1. Calcular el número de sector del penúltimo hallazgo. En mi ejemplo (ver imagen arriba) es 68069452800/512=132948150. Continúe buscando y calcule el sector del último hallazgo en algún lugar en el medio del disco y rodeado de sectores vacíos. En mi caso fue 68069454848/512=132948154 (sin foto). La diferencia entre los dos hallazgos es de 4 bloques (=2 KB).

      Esto es típico para el límite entre una partición JHFS+ y Recovery HD. El Recovery HD comienza entonces en el sector del segundo hallazgo - 2 (en mi ejemplo 132948154-2=132948152).

    2. Calcular el número de sector del primer hallazgo. En mi ejemplo, fue 67733904384/512=132292782 (sin imagen). Continúe buscando y calcule el sector del segundo hallazgo. En mi caso fue 68069454848/512=132948154 (sin foto). La diferencia entre los dos resultados es 655372 (~336 MB)

      Esto es típico para el límite entre una partición CoreStorage y Recovery HD. El Recovery HD comienza entonces en el sector del segundo hallazgo - 2 (en mi ejemplo 132948154-2=132948152).

Con estos resultados, debería poder restaurar su GPT correctamente. Salga de wxHexEditor. Si se le pide que guarde los cambios, ¡no los guarde!

  • Vuelva a iniciar el modo de recuperación de Internet y abra la Terminal
  • Entra diskutil listygpt -r show /dev/disk0
  • Retire la segunda partición (la partición protectora tipo FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF):

    diskutil umountDisk /dev/disk0
    gpt remove -i 2 /dev/disk0
    
  • Dado que EFI y Recovery HD suelen tener tamaños fijos, puede calcular el bloque inicial y final de su volumen principal.

    Calcula el tamaño del volumen principal: el bloque de inicio es 409640. El bloque final se ha encontrado en la sección "¿Dónde comienza la partición de Recovery HD?": 1 menos que el bloque de inicio de Recovery HD. El tamaño es entonces StartBlockOfRecoveryHD-409640.

  • Si ha encontrado un JHFS+ clásico anteriormente, el siguiente comando debería corregir la partición 2:

    diskutil umountDisk /dev/disk0
    gpt add -b 409640 -i 2 -s StartBlockOfRecoveryHD-409640 -t 48465300-0000-11AA-AA11-00306543ECAC disk0
    
  • Si ha encontrado una partición CoreStorage anteriormente, el siguiente comando debería reparar la partición 2:

    diskutil umountDisk /dev/disk0
    gpt add -b 409640 -i 2 -s StartBlockOfRecoveryHD-409640 -t 53746F72-6167-11AA-AA11-00306543ECAC disk0
    
  • Para reconstruir el disco duro de recuperación, ingrese:

    diskutil umountDisk /dev/disk0
    gpt add -b StartBlockOfRecoveryHD -i 3 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC disk0
    
  • Ahora puede intentar montar y verificar su antiguo volumen OS X:

    diskutil mount /dev/disk0s2
    diskutil verifyVolume /dev/disk0s2
    

    Si obtiene un error al montar o verificar el volumen, es posible que sus límites sean incorrectos. Deténgase aquí y consúlteme.

  • Si la verificación fue exitosa, puede iniciar su antiguo volumen OS X y verificar si funciona y eliminar TempSystem y el nuevo Recovery HD más tarde o eliminar ambos inmediatamente. La desventaja de arrancar primero con su antiguo volumen OS X es que tiene que arrancar con el Modo de recuperación de Internet una vez más para eliminar TempSystem y el nuevo Recovery HD.
  • Para eliminar ambas particiones prescindibles iniciadas en el modo de recuperación de Internet, ingrese:

    diskutil list
    gpt -r show /dev/disk0
    diskutil umountDisk /dev/disk0
    gpt remove -i 4 /dev/disk0 # remove the partition starting at block 180000000
    diskutil umountDisk /dev/disk0 # remove the partition starting at block 230000000
    gpt remove -i 5 /dev/disk0
    
  • Según el tipo de partición (HFSJ+ o CoreStorage), puede usar diskutil resizeVolume ...o diskutil cs resizeStack ...expandir su volumen OS X recuperado.

Después de acceder a la Mac remota e inspeccionar el disco, la solución probable final parece ser:

Eliminar la partición de bloqueo

diskutil umountDisk /dev/disk0
gpt remove -i 2 /dev/disk0

Restaurar la antigua entrada de la tabla de particiones de OS X

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

Restaurar el antiguo HD de recuperación:

diskutil umountDisk /dev/disk0
gpt add -b 157583376 -i 5 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC /dev/disk0

El volumen (cifrado con FileVault) tenía una estructura de volumen adecuada, aunque la estructura superior del disco estaba dañada. Después de realizar una copia de seguridad externa del volumen, el disco se reparticionó en una partición y se restauró la copia de seguridad.