Grub no ve el disco externo (Intel mac)

Grub no ve el disco externo (Intel mac)

Tengo una Mac Intel (MacMini) y una unidad USB externa. En el disco interno, tengo una partición con una instalación de OSX y otra con Ubuntu+Grub2. En el disco externo, tengo una copia de mi partición OSX completa y una copia de mi partición Ubuntu completa (ambas con UUID diferentes a los originales).

Utilizo rEFIt para arranque dual. El OSX y Linux interno y el OSX externo aparecen en el menú rEFIt y son de arranque. Falta el Linux externo que quiero poder arrancar. Después de crear la copia de seguridad de Linux, actualicé Grub en el Linux interno (encontró las 4 instalaciones) y en el externo (a través de chroot; encontró todas las instalaciones excepto el Linux interno). Esto no resolvió el problema.

Cuando intento iniciar Linux externo usando el Grub interno, aparece el mensaje de error:

error: no such device: <the UUID of the external Linux partition>
error: no such partition.
error: you need to load the kernel first.

Cuando escribo lsen el menú interno de Grub, enumera todas las particiones en el disco interno, pero (hd1)se omite por completo.

Intenté sincronizar las tablas de particiones en el disco externo usando gptsync, pero dice que no hay GPT presente. gdiskSin embargo, encontré uno y una comparación manual con la fdisksalida de me da la impresión de que están sincronizados. (La partición de Linux está incluida en ambas tablas).

EDITAR:

Grabé rEFInd en un CD y experimenté. Resultados:

  • Cuando inicio mi Mac presionando C para iniciar desde el CD, en breve muestra el fondo gris de rEFInd pero luego inicia inmediatamente el grub desde la instalación interna. Puedo solucionar este problema seleccionando rEFInd de rEFIt. Sin embargo, esto me da poca confianza para instalar rEFInd en OSX.

  • rEFInd muestra todas las opciones que debería mostrar. Como era de esperar, los Grubs aún no pueden iniciar Linux desde el disco externo.

  • Cuando ejecuto un kernel de Linux desde el disco externo usando rEFInd, arranca, pero después de arrancar resulta que la partición interna está montada como /. De acuerdo aesteartículo, los únicos cambios que uno tiene que hacer después de copiar una partición están en el grub. Como no estoy usando grub, no lo entiendo.

Respuesta1

Primero debe comprender la diferencia entre el arranque en modo EFI nativo y el arranque en modo BIOS/CSM/heredado. Las Mac basadas en Intel tienen firmware EFI y OS X arranca en modo EFI. Este firmware incluye un emulador de BIOS (conocido como Módulo de soporte de compatibilidad, o CSM; o a veces denominado soporte de "modo heredado") que les permite iniciar cargadores de arranque en modo BIOS. Apple tiene la intención de utilizar esto para iniciar Windows; pero muchas personas también utilizan este soporte BIOS/CSM/heredado para iniciar otros sistemas operativos, incluido Linux. Linux, sin embargo, admite el arranque en modo EFI y en modo BIOS, por lo que usar el CSM de Mac a menudo es innecesario e incluso una complicación. OTOH, hay ciertos modelos en los que el hardware funciona mejor en Linux cuando se inicia en modo BIOS que cuando se inicia en modo EFI.

Arrancar desde medios externos en Mac es una propuesta dudosa, especialmente en modo BIOS/CSM/legacy. Lo más probable es que ese sea el problema que estás encontrando. No conozco ninguna solución milagrosa al problema en el modo BIOS. La solución que tiene más probabilidades de funcionar es cambiar al arranque en modo EFI. Para hacer esto, te recomiendo que cambies del REFIt abandonado a su bifurcación que yo mantengo,volver a encontrar.Entre otras cosas, rEFInd agrega soporte para iniciar directamente kernels de Linux con cargadores de código auxiliar EFI (que incluye la mayoría de los kernels proporcionados por la distribución desde 3.3.0). Si inicia rEFInd desde la unidad flash USB o la imagen de CD-R disponible en su página de descargas, puede iniciar Linux desde sus unidades internas y externas (y OS X también desde ambas ubicaciones). Si esto funciona, instale rEFInden OSXy también instale el controlador para cualquier sistema de archivos que contenga su kernel de Linux (generalmente ext4fs). El resultado debería ser la posibilidad de iniciar cualquiera de los sistemas operativos directamente, sin pasar por GRUB.

Si todo esto funciona recomiendo quitar lo feo y peligrosoMBR híbrido,que el EFI de Apple utiliza como disparador para activar su CSM. (La gptsyncutilidad crea o modifica un MBR híbrido). Lea ese enlace para comprender qué es un MBR híbrido y por qué es un problema.


EDITAR:

El hecho de que el CD-R de rEFInd no funcionara correctamente cuando usó "C" para iniciarlo directamente pero sí funcionó cuando se inició desde rEFInd dice poco sobre la probabilidad de que rEFInd funcione correctamente cuando se instala en un disco duro o unidad flash USB. Desafortunadamente, el arranque desde medios ópticos en EFI es bastante complicado y Apple parece haber cometido sus propios problemas. Por lo tanto, arrancar de esa manera puede ser un poco complicado, especialmente porque yo (el desarrollador de rEFInd) solo tengo una Mac antigua para probar cosas. Es más probable que funcione arrancar desde el disco duro (o desde una unidad flash USB).

Según su descripción, sospecho que no pudo actualizar su /etc/fstabarchivo en el sistema de archivos copiado. Es necesario actualizar /etc/fstabpara hacer referencia al nuevo UUID de la partición al seguir ese procedimiento. Si por casualidad tiene un /boot/refind_linux.confarchivo, también debe actualizarlo. (Lo más probable es que no tengas ese archivo, pero podrías tenerlo si fuiste un poco más allá de mis instrucciones o si jugaste con rEFInd en el pasado).

información relacionada