Bootcamp: sin dispositivo de arranque: inserte el disco de arranque y presione cualquier tecla

Instalé Windows 7 en mi MacBook Pro 2011 (MacOS High Sierra) con éxito. La computadora lo reconoció en el momento del arranque y no tuvo problemas.

Luego usé la Utilidad de disco para crear algo de espacio libre en el disco duro compartido por MacOS y Windows. Ahora recibo este mensaje al iniciar Windows: no hay dispositivo de inicio: inserte el disco de inicio y presione cualquier tecla

Usando Finder, puedo ver que mis archivos de Windows 7 están todos intactos, ¡pero no puedo arrancar desde Bootcamp!

A continuación se muestra la salida del comando diskutil list.

/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage HARDISK                 600.4 GB   disk0s2
   3:                 Apple_Boot Recovery HD             87.8 GB    disk0s3
   4:       Microsoft Basic Data BOOTCAMP                120.0 GB   disk0s4 

A continuación se muestra el resultado de fdisk /dev/disk0MacOS Recovery:

-bash-3.2# fdisk /dev/disk0
Disk: /dev/disk0 geometry: 121601/255/63 [1953525168 sectors]
Signature: 0xAA55
     Starting       Ending
#: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
1: EE 1023 254  63 - 1023 254  63 [         1 - 1953525167] <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  

A continuación se muestra el resultado de ls -d /Volumes/BOOTCAMP/BootMacOS Recovery:

/Volumes/BOOTCAMP/Boot
Publique la salida del comando diskutil list. Además, ¿instaló Windows usando un DVD o una unidad flash? ¿Qué versión de macOS estás usando actualmente?
Lo instalé usando una unidad flash creada por BootCamp Assistant. La instalación original fue excelente, el problema solo ocurrió después de que usé Disk Utility en MacOS para crear una partición de espacio libre.

Respuestas (1)

Con el lanzamiento de High Sierra, Apple se ha olvidado de las necesidades de los usuarios de Windows 7. La combinación correcta (o incorrecta) de comandos provoca el borrado de los valores almacenados en la tabla Master Boot Record (MBR). Windows 7 usa estos valores para determinar la partición de la unidad. Afortunadamente, estos valores están duplicados en la tabla de particiones GUID (GPT). Desafortunadamente, tendrá que realizar la tediosa tarea de volver a ingresar los valores que faltan.

A menos que deshabilite la Protección de integridad del sistema (SIP), las soluciones que se brindan a continuación requieren que se inicie la recuperación de macOS a través de Internet, la recuperación integrada o un instalador de macOS en una unidad flash USB . Una vez que haya iniciado MacOS Recovery , abra una ventana de la aplicación Terminal.

Nota: La aplicación Terminal se puede encontrar en "Utilidades" en la barra de menú.

Solución sin utilizar herramientas de terceros

La respuesta dada a continuación se basa en mi respuesta a la pregunta Cómo convertir una unidad del formato GPT al formato híbrido GPT/MBR cuando se usa High Sierra (macOS 10.13.2) . Debe leer esta pregunta y respuesta antes de continuar. El comando dado a continuación se puede usar para mostrar parcialmente la información contenida en la tabla de particiones GUID (GPT) almacenada en disk0. Necesitará esta información cuando edite la tabla Master Boot Record (MBR).

gpt -r show /dev/disk0 

Estos son los pasos necesarios para editar la tabla MBR para crear un esquema de particionamiento híbrido. Realizará los mismos pasos que se dan en esta respuesta , excepto por los cambios que se indican a continuación.

  1. El comando interactivo para editar la tabla de particiones MBR se proporciona a continuación. No se introducirán todos los cambios en el modo CHS.

    fdisk -e /dev/disk0
    

    Ingresar este comando produjo el siguiente resultado

    fdisk: could not open MBR file /usr/standalone/i386/boot0: No such file or directory
    Enter 'help' for information
    fdisk: 1> 
    

    Nota: La tecla control+ Cse puede presionar en cualquier momento para finalizar el fdiskcomando sin guardar los cambios.

  2. La única entrada, en la tabla MBR inicial, define una "Partición protectora". Esta partición debe truncarse hasta el final de la primera partición en GPT con el GUID de C12A7328-F81F-11D2-BA4B-00A0C93EC93B. Esto significa que el startvalor debe permanecer 1, pero el sizevalor debe reducirse al valor start+ size- 1. Los valores utilizados en esta ecuación deben tomarse de GPT. El valor calculado suele ser 409639.

    A continuación se muestran los valores correctos que se deben ingresar fdiskpara la primera partición de la tabla MBR. Reemplace <start + size - 1 of GPT partition with index=1>con el valor entero calculado.

    edit 1
    EE
    N
    1
    <start + size - 1 of GPT partition with index=1>
    
  3. Luego, ingrese los valores correctos para la segunda partición de la tabla MBR. El comando es edity el ides AC. Los valores starty sizeson los mismos que se muestran en la GPT. Al hacerlo, se obtiene lo que se muestra a continuación.

    edit 2
    AC
    N
    <start of GPT partition with index=2>
    <size of GPT partition with index=2>
    
  4. Repita el paso anterior para actualizar las particiones 3 y 4 de la tabla MBR. Esto se muestra a continuación. El idde la partición 3 es ABy el de la partición 4 es 07.

    edit 3
    AB
    N
    <start of GPT partition with index=3>
    <size of GPT partition with index=3>
    edit 4
    07
    N
    <start of partition with index=4>
    <size of partition with index=4>
    
  5. El siguiente comando marca la cuarta partición MBR como de arranque. Se eligió esta partición porque aquí es donde reside Windows.

    flag 4
    
  6. El siguiente comando a ingresar es print. Este comando muestra cómo se vería la tabla MBR actualizada. Puede usar la salida para verificar sus cambios.

    Nota: Las descripciones como <Unknown ID>y son incorrectas o están desactualizadas Xenix BBT. HPFS/QNX/AUXAdemás, macOS o Windows ya no usan los cylvalores , hdy sec, por lo que puede ignorar estos valores.

  7. El comando final quitvuelve a escribir la tabla en el MBR y luego sale fdisk. Esto se muestra a continuación.

    fdisk:*1> quit
    Writing current MBR to disk.
    Device could not be accessed exclusively.
    A reboot will be needed for changes to take effect. OK? [n] Y
    

    Como sugiere el mensaje anterior, sería una buena idea reiniciar la Mac.

Solución utilizando una herramienta de terceros

El comando gdiskes una herramienta de terceros que se puede usar para evitar tener que ingresar manualmente los valores de partición desde el GPT. Puede descargarlo gdiskdesde este sitio web de SourceForge . Una vez que haya iniciado MacOS Recovery, deberá ingresar el comando que se indica a continuación.

/Volumes/HARDISK/usr/local/bin/gdisk  /dev/disk0

Nota: Supongo que el nombre de su volumen de arranque de macOS es HARDDISK. Si no es así, haga la sustitución correspondiente.

A continuación se muestra un ejemplo de su entrada gdisk.

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): 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 3 4
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): ac
Set the bootable flag? (Y/N): n

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

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

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/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.

Como sugiere el mensaje anterior, sería una buena idea reiniciar la Mac.

Pensamientos finales

Si su Mac aún no puede iniciarse en Windows, deberá reconstruir su código de inicio de Windows. Para esto, necesitará una unidad flash que usó para instalar Windows 7. Avíseme si necesita instrucciones.

Si lee todo el camino hasta este punto, también podría mencionar el otro problema . Se supone que su Recovery HDpartición no tiene un tamaño de 87,8 GB. Esto no tiene nada que ver con Windows, pero pensé que debería señalarlo.

Utilicé la herramienta de terceros, ¡funcionó! Muchas gracias. Me salvaste de una reinstalación total. ¿Cómo supiste hacer eso?
Escribí algunos comandos para imprimir las tablas de particiones, así que supongo que tengo algún conocimiento en esta área.
David Anderson, estaba enfrentando el mismo problema que Talon M. Su segundo método basado en una herramienta de terceros funcionó muy bien para mí, muchas gracias. Pero ahora perdí el acceso a la partición Macintosh HD cuando inicié sesión en Bootcamp Windows 7. De alguna manera siempre tuve este acceso, recuerdo que una vez un amigo mío lo hizo por mí. Pero fue hace años, y no recuerdo los pasos. Lo estoy buscando en Google, pero me encantaría escuchar un consejo tuyo, una vez que tu tutorial para hacer que la partición bootcamp sea arrancable fue quirúrgicamente perfecto. De nuevo muchas gracias.
Esto solucionó el arranque de Windows para mí después de instalar Mojave, ¡muchas gracias!