Windows no pudo iniciarse después de la actualización a El Capitan

Hay algo muy frustrante que estoy tratando de resolver durante unos días. Mi MacBook Pro tiene un disco duro de 500 GB. Tenía Mac OS 10.6.8. Se realizó una instalación de Windows 7 hace algún tiempo a través de Bootcamp y pude cambiar entre Mac OS y Mac OS sin ningún problema. La partición de Mac OS tenía alrededor de 180 GB y el resto era para Windows.

Recientemente actualicé a El Capitan y cuando intento iniciar Windows (tecla alt durante la carga) aparece el mensaje de error "Windows no se pudo iniciar. Un cambio reciente de hardware o software podría ser la causa". Tampoco hay una partición de Windows en Disk Utility o BootCamp. Alrededor de 300 GB simplemente desaparecieron.

Hay alguna manera de recuperarlo? Realmente agradecería cualquier ayuda porque simplemente no puedo permitirme perder datos en esa partición de Windows...

Según lo solicitado, estoy actualizando mi pregunta:

salida dediskutil list

    /dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage Mac                     166.4 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
   4:       Microsoft Basic Data System Reserved         104.9 MB   disk0s4
/dev/disk1 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Mac                    +166.0 GB   disk1
                                 Logical Volume on disk0s2
                                 1C5FEA8D-54E6-4566-A6FD-6E865C0BFC10
                                 Unencrypted

salida dediskutil cs list

CoreStorage logical volume groups (1 found)
|
+-- Logical Volume Group 28C2C151-3444-42C2-A080-A0C98DB293FE
    =========================================================
    Name:         Mac
    Status:       Online
    Size:         166350385152 B (166.4 GB)
    Free Space:   18968576 B (19.0 MB)
    |
    +-< Physical Volume FFDB1FC3-3DD3-47CB-BACF-18ED05914ED0
    |   ----------------------------------------------------
    |   Index:    0
    |   Disk:     disk0s2
    |   Status:   Online
    |   Size:     166350385152 B (166.4 GB)
    |
    +-> Logical Volume Family 3F1CB793-148F-4870-A23E-19DFE086C879
        ----------------------------------------------------------
        Encryption Type:         None
        |
        +-> Logical Volume 1C5FEA8D-54E6-4566-A6FD-6E865C0BFC10
            ---------------------------------------------------
            Disk:                  disk1
            Status:                Online
            Size (Total):          165979095040 B (166.0 GB)
            Revertible:            Yes (no decryption required)
            LV Name:               Mac
            Volume Name:           Mac
            Content Hint:          Apple_HFS

salida desudo 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  324903096      2  GPT part - 53746F72-6167-11AA-AA11-00306543ECAC
  325312736    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
  326582272     204800      4  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  326787072  649986063         
  976773135         32         Sec GPT table
  976773167          1         Sec GPT header

salida desudo fdisk /dev/disk0

Disk: /dev/disk0    geometry: 60801/255/63 [976773168 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: EE 1023 254  63 - 1023 254  63 [         1 -     409639] <Unknown ID>
 2: AC 1023 254  63 - 1023 254  63 [    409640 -  324903096] <Unknown ID>
 3: AB 1023 254  63 - 1023 254  63 [ 325312736 -    1269536] Darwin Boot 
*4: 07 1023 254  63 - 1023 254  63 [ 326582272 -     204800] HPFS/QNX/AUX

salida desudo hexdump -v -n 512 -s 326787072b -C /dev/disk0

26f4c00000  eb 52 90 4e 54 46 53 20  20 20 20 00 02 08 00 00  |.R.NTFS    .....|
26f4c00010  00 00 00 00 00 f8 00 00  3f 00 ff 00 00 60 7a 13  |........?....`z.|
26f4c00020  00 00 00 00 80 00 80 00  ff f7 bd 26 00 00 00 00  |...........&....|
26f4c00030  00 00 0c 00 00 00 00 00  02 00 00 00 00 00 00 00  |................|
26f4c00040  f6 00 00 00 01 00 00 00  6e 66 76 86 a0 76 86 30  |........nfv..v.0|
26f4c00050  00 00 00 00 fa 33 c0 8e  d0 bc 00 7c fb 68 c0 07  |.....3.....|.h..|
26f4c00060  1f 1e 68 66 00 cb 88 16  0e 00 66 81 3e 03 00 4e  |..hf......f.>..N|
26f4c00070  54 46 53 75 15 b4 41 bb  aa 55 cd 13 72 0c 81 fb  |TFSu..A..U..r...|
26f4c00080  55 aa 75 06 f7 c1 01 00  75 03 e9 dd 00 1e 83 ec  |U.u.....u.......|
26f4c00090  18 68 1a 00 b4 48 8a 16  0e 00 8b f4 16 1f cd 13  |.h...H..........|
26f4c000a0  9f 83 c4 18 9e 58 1f 72  e1 3b 06 0b 00 75 db a3  |.....X.r.;...u..|
26f4c000b0  0f 00 c1 2e 0f 00 04 1e  5a 33 db b9 00 20 2b c8  |........Z3... +.|
26f4c000c0  66 ff 06 11 00 03 16 0f  00 8e c2 ff 06 16 00 e8  |f...............|
26f4c000d0  4b 00 2b c8 77 ef b8 00  bb cd 1a 66 23 c0 75 2d  |K.+.w......f#.u-|
26f4c000e0  66 81 fb 54 43 50 41 75  24 81 f9 02 01 72 1e 16  |f..TCPAu$....r..|
26f4c000f0  68 07 bb 16 68 70 0e 16  68 09 00 66 53 66 53 66  |h...hp..h..fSfSf|
26f4c00100  55 16 16 16 68 b8 01 66  61 0e 07 cd 1a 33 c0 bf  |U...h..fa....3..|
26f4c00110  28 10 b9 d8 0f fc f3 aa  e9 5f 01 90 90 66 60 1e  |(........_...f`.|
26f4c00120  06 66 a1 11 00 66 03 06  1c 00 1e 66 68 00 00 00  |.f...f.....fh...|
26f4c00130  00 66 50 06 53 68 01 00  68 10 00 b4 42 8a 16 0e  |.fP.Sh..h...B...|
26f4c00140  00 16 1f 8b f4 cd 13 66  59 5b 5a 66 59 66 59 1f  |.......fY[ZfYfY.|
26f4c00150  0f 82 16 00 66 ff 06 11  00 03 16 0f 00 8e c2 ff  |....f...........|
26f4c00160  0e 16 00 75 bc 07 1f 66  61 c3 a0 f8 01 e8 09 00  |...u...fa.......|
26f4c00170  a0 fb 01 e8 03 00 f4 eb  fd b4 01 8b f0 ac 3c 00  |..............<.|
26f4c00180  74 09 b4 0e bb 07 00 cd  10 eb f2 c3 0d 0a 41 20  |t.............A |
26f4c00190  64 69 73 6b 20 72 65 61  64 20 65 72 72 6f 72 20  |disk read error |
26f4c001a0  6f 63 63 75 72 72 65 64  00 0d 0a 42 4f 4f 54 4d  |occurred...BOOTM|
26f4c001b0  47 52 20 69 73 20 6d 69  73 73 69 6e 67 00 0d 0a  |GR is missing...|
26f4c001c0  42 4f 4f 54 4d 47 52 20  69 73 20 63 6f 6d 70 72  |BOOTMGR is compr|
26f4c001d0  65 73 73 65 64 00 0d 0a  50 72 65 73 73 20 43 74  |essed...Press Ct|
26f4c001e0  72 6c 2b 41 6c 74 2b 44  65 6c 20 74 6f 20 72 65  |rl+Alt+Del to re|
26f4c001f0  73 74 61 72 74 0d 0a 00  8c a9 be d6 00 00 55 aa  |start.........U.|
26f4c00200

Tengo una duda sobre el Win7, pero creo que era de 32 bits. El modelo MBP es A1278 13 pulgadas i7 4GB RAM 500GB Disco duro

Edite su pregunta y agregue la salida de los siguientes comandos de la aplicación Terminal : diskutil list, y . Estos comandos no cambiarán su computadora. Algunos pueden pedir su contraseña de inicio de sesión. Esto es normal. ¿Sabes si Windows 7 era una instalación de 32 bits o de 64 bits? Además, ¿cuál es el modelo/año de tu Mac? diskutil cs listsudo gpt -r show /dev/disk0sudo fdisk /dev/disk0
@DavidAnderson gracias, he actualizado la pregunta
La partición de Windows se ha eliminado de las tablas de particiones. El espacio ocupado por esta partición todavía existe. Desconozco en qué medida los datos pueden haberse corrompido. Debido a que la Mac tiene una partición de reserva del sistema, la recuperación de la ubicación de la partición por sí sola no permite que Windows arranque. Si puede volver a agregar la partición a GPT, es posible que OS X pueda leer los datos. Primero le preguntaría a @klanomath si tiene alguna idea sobre la recuperación de una partición NTFS.
Gracias. Es realmente triste que una actualización de OS X lo haya causado. Esperaré pacientemente a que @klanomath se dé cuenta de esta pregunta y tal vez agregue algo. Saludos.
Dado que klanomath aún no ha publicado su pregunta, no estoy seguro de que un @klanomath resulte en el envío de un mensaje. De todos modos, se ha ido durante las últimas 2 horas y son las 00:48 en Berlín.
@klanomath: Instalé Windows 7 SP1 de 64 bits en VirtualBox usando todas las configuraciones predeterminadas. La brecha entre la partición "Reservada para el sistema" y la subsiguiente partición NTFS era de cero bloques. El primer bloque de un volumen NTFS se describe aquí .
@DavidAnderson Busqué los valores de brecha aquí en SE y encontré valores variables. ¿Instalaste Windows 7 con el Asistente Boot Camp en Virtual Box?
@klanomath: Nunca instalé OS X en ningún entorno virtual. En este caso, sería inútil hacerlo. El Asistente BootCamp no crea una partición "Reservada para el sistema" al instalar Windows en modo BIOS. El usuario pnb1 no usó o usó incorrectamente el Asistente de BootCamp para instalar Windows 7. El instalador de Windows creó la partición "Reservada para el sistema" porque OS X 10.6 no tiene una partición de recuperación. Normalmente, el Asistente de Boot Camp evita que esto ocurra asignando todo el espacio libre antes de que se instale Windows.
Algunos detalles más: obtuve este MBP con OS X 10.6.7 y Win7 ya instalados. Luego lo actualicé a OS X 10.6.8. Ya fue entonces cuando Win7 se fue del BootCamp. Sin embargo, todavía pude ejecutar Win7 reiniciando MBP, manteniendo presionada la tecla Alt y seleccionando la partición de Windows.
¿Podría ejecutar el siguiente comando y publicar los resultados en su pregunta? Este comando no cambiará su computadora. el comando essudo hexdump -v -n 512 -s 326787072b -C /dev/disk0
@DavidAnderson, lamento la demora, actualicé la pregunta con el resultado del comando anterior.

Respuestas (2)

Según su correo electrónico hexdump, he determinado que existía una partición NTFS inmediatamente después de la última partición que se muestra en su tabla de particiones GUID (GPT). El hexdumptambién muestra el tamaño de esta partición eliminada.

Los valores impresos por hexdumpse describen en la tabla que se muestra en la sección titulada Sector de arranque de partición del sitio de Wikipedia NTFS .

Con esta información, es posible que pueda recuperar su partición perdida. A continuación, he esbozado el procedimiento. Antes de ejecutar el procedimiento, deberá hacer lo siguiente.

  1. Descargue e instale el comando de la aplicación Terminal gdisk. Este comando se puede descargar desde el sitio GPT fdisk . Si lo deseas, puedes leer un tutorial que se encuentra aquí .
  2. Deshabilite la protección de integridad del sistema (SIP). Consulte " ¿Cómo desactivo la Protección de integridad del sistema (SIP), también conocida como "rootless" en OS X 10.11, El Capitan? " para obtener instrucciones. Cuando termine, puede habilitar SIP.

El siguiente ejemplo muestra el procedimiento para reparar su computadora. Simulé las condiciones de su Mac usando una imagen de disco de repuesto. Por lo tanto, deberá sustituir /dev/disk0donde usé /dev/disk1. Si comete un error, debería poder ingresar un controlCpara salir del programa. Cualquier cambio real no se vuelve a escribir en su disco interno hasta el final del procedimiento.

Steelhead:~ davidanderson$ sudo gdisk /dev/disk1
Password:
GPT fdisk (gdisk) version 1.0.1

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

Found valid GPT with hybrid MBR; using GPT.

Command (? for help): n
Partition number (5-128, default 5): 5
First sector (34-978515631, default = 326787072) or {+-}size{KMGTP}: 326787072
Last sector (326787072-978515631, default = 978515631) or {+-}size{KMGTP}: +649984000
Current type is 'Apple HFS/HFS+'
Hex code or GUID (L to show codes, Enter = AF00): 0700
Changed type of partition to 'Microsoft basic data'

Command (? for help): r

Recovery/transformation command (? for help): h

WARNING! Hybrid MBRs are flaky and dangerous! If you decide not to use one,
just hit the Enter key at the below prompt and your MBR partition table will
be untouched.

Type from one to three GPT partition numbers, separated by spaces, to be
added to the hybrid MBR, in sequence: 2 4 5
Place EFI GPT (0xEE) partition first in MBR (good for GRUB)? (Y/N): y

Creating entry for GPT partition #2 (MBR partition #2)
Enter an MBR hex code (default AF): af
Set the bootable flag? (Y/N): n

Creating entry for GPT partition #4 (MBR partition #3)
Enter an MBR hex code (default 07): 07
Set the bootable flag? (Y/N): y

Creating entry for GPT partition #5 (MBR partition #4)
Enter an MBR hex code (default 07): 07
Set the bootable flag? (Y/N): n

Recovery/transformation 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/disk1.
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.
Steelhead:~ davidanderson$

Cuando termine, probablemente debería reiniciar su computadora.

Estaba siguiendo tus instrucciones y noté una pequeña diferencia: el tuyo es First sector (34-978515631, default = 326787072) or {+-}size{KMGTP}: 326787072 Last sector (326787072-978515631 , default = 978515631 ) or {+-}size{KMGTP}: +649984000y el mío es First sector (34-976773134, default = 326787072) or {+-}size{KMGTP}: 326787072 Last sector (326787072-976773134 , default = 976773134 ) or {+-}size{KMGTP}: +649984000 ¿Debería continuar de todos modos?
@pnb1: Para simular sus condiciones, utilicé la aplicación Disk Utility para crear una unidad virtual (es decir, un archivo de imagen de disco de repuesto) para representar su unidad física. Es casi imposible crear un disco virtual exactamente del mismo tamaño que el suyo, así que creé uno un poco más grande. Por eso los valores son diferentes. Aún debe ingresar los valores que se muestran en la publicación. Nota: el valor +649984000debe incluir el +(signo más).
¡Funcionó! La partición se restauró y todos los archivos de Windows están aquí nuevamente. Muchas gracias. También muchas gracias a @klanomath. Realmente aprecio mucho lo que han hecho por mí. Toda la suerte :)

Probablemente, la actualización a El Capitan y la conversión de su volumen OS X principal (disk0s2) a un volumen CoreStorage (disk0s2 y disk1) causen estragos en la entrada de la tabla de particiones GUID de su partición Boot Camp.

Su tabla de particiones debe ser similar a esta:

...
325312736    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
326582272       1712         #gap 2
326583984  650189000      4  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
976772984        151         #gap 3        
976773135         32         Sec GPT table
976773167          1         Sec GPT header

Los espacios entre la partición 3 y 4 ( espacio 2 ) y entre la partición 4 y la segunda tabla GPT ( espacio 3 ) tienen tamaños variables. He encontrado un tamaño de ~1000-2000 bloques para el espacio 2 y 100 ± 50 bloques para el espacio 3 . Algunas instalaciones de Boot Camp también pueden contener una segunda partición EFI después de la partición 3 (Recovery HD).

Para recuperar su partición de Windows, debe eliminar la partición 4 y restaurar la antigua partición de Windows NTFS. Para encontrar el bloque de inicio y el tamaño de esta partición, puede usar una herramienta de recuperación de partición como TestDisk o encontrar la partición manualmente.


Para encontrar su partición NTFS manualmente, debe instalar OS X en un disco externo o memoria USB. Inicie en la unidad externa, instale wxHexEditor y habilite el usuario raíz. Inicie sesión como usuario raíz.

La suposición detrás del enfoque que se describe a continuación es que el instalador de El Capitan afirma que una segunda partición EFI anterior (disk0s4 - 204800 bloques) es la "nueva" partición NTFS de Windows 7 y ha omitido disk0s5 (el antiguo Windows NTFS real) o ha creado una partición aleatoria.

Una partición NTFS estándar tiene dos bloques característicos y casi idénticos, el primer bloque de un volumen y el penúltimo bloque, que contienen la cadena de mensajes NTFS y BOOTMGR. Si se pueden identificar los dos bloques, se puede determinar el bloque de inicio y el tamaño. Agregar este volumen NTFS en el espacio "libre" del disco 0 debería restaurar su volumen anterior de Windows 7.

  1. Abra Terminal e ingrese (abajo supongo que el identificador de disco de su disco interno es disk0):

    diskutil list
    gpt -r show /dev/disk0
    fdisk /dev/disk0
    

    para obtener una visión general. Guarde los listados en un archivo de texto.

  2. Eliminar la cuarta partición:

    diskutil umountDisk /dev/disk0
    gpt remove -i 4 /dev/disk0
    diskutil mountDisk /dev/disk0
    

    Su tabla de particiones debería verse así después:

    ...
    325312736    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
    326582272  650190863     
    976773135         32         Sec GPT table
    976773167          1         Sec GPT header
    
  3. Abra wxHexEditor y en la barra de menú Dispositivos -> Abrir dispositivo de disco -> disk0 -> disk0. Expanda la barra de compensación horizontal para mostrar la compensación 00-1F como en la siguiente captura de pantalla (resaltada en rojo). El botón Ir a está resaltado en rosa y el botón de búsqueda en verde.

    Si tiene que ingresar valores o letras, ¡nunca use copiar y pegar! Puede modificar el contenido del disco al hacerlo.

    ingrese la descripción de la imagen aquí

  4. Salga de wxHexEditor eligiendo Salir y conservar Windows .

  5. Vuelva a abrir wxHexEditor y abra disk0 nuevamente como antes.
  6. Presione el botón Ir a e ingrese 326582272 (sector|Decimal|Desde el principio) como en la captura de pantalla a continuación para saltar al primer bloque del espacio vacío.

    ingrese la descripción de la imagen aquí

  7. Presione el botón Buscar e ingrese NTFS (Texto | Coincidencia de mayúsculas y minúsculas) como en la captura de pantalla a continuación:

    ingrese la descripción de la imagen aquí

  8. Esto debería mostrarle el comienzo de su antigua partición NTFS como en la siguiente captura de pantalla:

    ingrese la descripción de la imagen aquí

    Tome nota del desplazamiento (resaltado en rojo con el valor 135266304 en mi ejemplo; encontrará un valor diferente, por supuesto). Verifique el bloque si también contiene mensajes BOOTMGR como en mi ejemplo. Dado que el volumen NTFS se formateó con un Windows 7 alemán, están en alemán, no en inglés.

  9. Presiona el botón Ir a e ingresa 1 (sector|Decimal|Desde el final)
  10. Presione el botón Buscar e ingrese NTFS (Texto | Coincidir mayúsculas y minúsculas | Buscar hacia atrás). Tome nota del desplazamiento (en mi ejemplo, es 650476781056).

    ingrese la descripción de la imagen aquí

  11. Los dos desplazamientos encontrados deberían marcar los límites de su antigua partición NTFS. Para obtener el bloque de inicio, divida el primer desplazamiento por 512:

    Con mi ejemplo, offset1 es 135266304/512 = 264192 (bloque de inicio)

    Para obtener el uso de tamaño (offset2 + 512)/512 - startblock = tamaño

    Con mi ejemplo, offset2 es (650476781056 + 512)/512 - 264192 = 1270198272

    ¡Ambos valores encontrados (bloque de inicio / tamaño) deben ser divisibles entre 8!

  12. Salga de wxHexEditor y agregue la partición en Terminal con:

    diskutil umountDisk /dev/disk0
    gpt add -b startblock -i 4 -s size -t EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 /dev/disk0
    
  13. Verifique con fdisk si la partición se agregó/modificó correctamente en el MBR:

    fdisk /dev/disk0
    

Al inspeccionar su mapa de partición actual, no está claro si la partición disk0s4 con un tamaño de 100 MiB es una segunda partición EFI antigua o si fue construida aleatoriamente por el instalador de El Capitan. Restaurar la antigua partición de Windows 7 debería permitirle acceder a sus datos. No significa necesariamente que se pueda iniciar ni que no se necesite el segundo EFI eliminado en el paso 2 (para iniciar la partición restaurada de Windows 7).

Esto podría fallar debido a otras ocurrencias (aleatorias) de la cadena NTFS. Por favor, póngase en contacto conmigo si no está seguro o tiene problemas.

Muchas gracias, aprenderé más sobre todo esto para estar más cómodo con la ejecución de las instrucciones que me has dado. Luego volveré a informar.
@pnb1 Si documenta sus listados y modificaciones correctamente, cualquier cambio de gpt/mbr es reversible y no dañará el contenido de los volúmenes. gpty fdisksolo escribe en los primeros y últimos 33 bloques de su disco.
Podría estar equivocado, pero esta es la forma en que leo las instrucciones: elimine la partición 4 en el paso 2. Busque el comienzo de la partición 4 en el paso 8. Busque el final de la partición 4 en el paso 10. Esto resulta en volver a agregar la partición 4 en paso 12. Al final, nada cambia.
@DavidAnderson Nonono ;-). Mi suposición es que el nuevo disk0s4 es un efi o un elemento de partición aleatorio creado por el capitan (lo que lo convierte en una partición NTFS estándar) y el antiguo disk0s4 real se hunde en algún lugar después del bloque 326582272, buscando hacia atrás la cadena NTFS desde el final de disk0 no lo llevará al final del "nuevo" disk0s4.
Me he encontrado con otro problema. Como dijiste, instalé OS X en una memoria USB o disco externo. Desafortunadamente, mis puertos USB no funcionan. Ahora estoy esperando que me entreguen una bandeja caddy para conectar otra unidad.
@pnb1 Si tiene una segunda Mac con FireWire, puede usarla arrancando la rota en el modo de destino y conectándola a la buena.
@klanomath sí, soy consciente de eso. Lamentablemente no tengo otro mac.