Restaure el cargador de arranque de Apple en una Mac (Intel) después de que una instalación externa de Ubuntu haya ejecutado un grub de actualización


10

Tengo Ubuntu instalado en un HDD externo, y lo uso como una instalación portátil que puedo llevar a donde quiera que vaya.

Hoy lo inicié en el iMac de un amigo, y después de que Software Updater me pidiera que instalara las actualizaciones. Así que lo hice.

Como en ese momento ya había terminado, apagué la computadora y desconecté el HDD externo. Inmediatamente después de lo cual comencé el iMac nuevamente para que se reiniciara en OSX.

Para mi total sorpresa, horror y confusión, ¡ me encontré con una pantalla de rescate GRUB!

¿Cómo es eso posible? ¡Ubuntu está instalado en el HDD externo, no en el interno! ¿Cómo diablos GRUB terminó en el disco duro interno del iMac?

Más importante aún, ¿cómo soluciono esto?



1
@Fran - No, no un tonto. Quería restaurar el cargador de arranque de Apple, no GRUB.
You'reAGitForNotUsingGit

Respuestas:


9

(Desplácese hacia abajo para la solución real)

Así que las cosas eran aún más complicadas de lo que parecía al principio.

Para mantener la compatibilidad con MS-Windows, Apple utiliza un modo híbrido UEFI y Legacy MBR. Aparentemente, hay un valor NVRAM que le dice al firmware si debe intentar arrancar en modo UEFI (OS-X) o en modo MBR heredado (Windows). Ese valor está controlado por su selección en "Preferencias del sistema> Disco de inicio". (No me preguntes por qué, pregúntale a Apple)

Ahora para arrancar Ubuntu desde mi HDD externo, primero arranqué desde un DVD en el que había grabado un ISO de rEFInd. (Seleccionando "EFI boot" con el ícono del DVD cuando se mantiene presionada la Optiontecla durante el inicio). Después de arrancar desde ese DVD, seleccioné mi HDD externo para arrancar desde adentro de rEFInd.

Aquí es donde las cosas comienzan a ponerse realmente extrañas. Después de decirle a rEFInd que arranque desde el HDD externo, la pantalla púrpura de GRUB nunca apareció (Sí, había configurado un retraso) y, además, no había animación de arranque de punto púrpura. En cambio, fue el inicio de desplazamiento del texto blanco.

Por lo que puedo ver mirando rEFInd más de cerca antes de presionar el arranque, es que la opción de Ubuntu era en realidad cargar un núcleo específico, y no solo arrancar desde el disco.

Lo que eso significa es que rEFInd es, bueno, obviamente EFI, y funciona esencialmente como un reemplazo GRUB, que a pesar de que Ubuntu se instaló en modo MBR en el HDD externo, terminó arrancando en modo UEFI.

Ese hecho es muy importante, y verás por qué en solo un segundo.

Entonces dejo que el Actualizador de software ejecute algunas actualizaciones. Al observar los registros, parece que el update-grubcomando se ejecutó durante el proceso de instalación. Aquí es donde suceden todas las cosas malas . Ahora, en este punto, no sé exactamente qué sucedió, pero esta es mi mejor suposición: el actualizador de grub se confundió ya que grub se instaló en modo MBR, pero Ubuntu se inició actualmente en modo UEFI. Debido a la confusión y al hecho de que el gestor de arranque está instalado en un lugar diferente según el modo en que se inicie, el actualizador de grub comete un gran error e instala grub en modo MBR en el HDD interno.


Ahora para la solución real!

En mi caso particular, la partición OS-X todavía era arrancable si mantenía Optionpresionada la tecla durante el inicio y seleccionaba el "Macintosh HD".

Después de iniciar OS-X, querrá abrir Preferencias del sistema y luego ir al Disco de inicio. Seleccione el volumen OS-X, presione aplicar o lo que sea, reinicie y ¡BOOM! el logo de Apple muestra!


Ahora, solo para su información, creo que aunque eso soluciona el problema, GRUB todavía reside en el sector 0, pero no creo que haga ningún daño allí, y ciertamente no si instala Windows en Boot Camp, ya que el arranque de Windows el cargador simplemente lo sobrescribiría entonces

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.