Tengo un pequeño problema con rEFInd y no pude encontrar algo específico al respecto.
Instalé con éxito Ubuntu 14.04 para arranque dual con OS X Yosemite en mi MacBook Pro 3.1 usando rEFInd, pero ahora, después de arrancar en Ubuntu, el menú rEFInd no aparece después de un reinicio. Simplemente va directamente a la comida. Después de reiniciar nuevamente en OS X (usando la tecla de opción en el inicio) a veces aparece rEFInd, a veces no, no puedo entender cómo se activa.
¿Hay alguna manera de garantizar que rEFInd aparezca primero, sin importar qué sistema operativo haya arrancado anteriormente?
Editar
Usar efibootmgr -v
me da:
BootCurrent: 0001
Timeout: 5 seconds
BootOrder: 0001,0080,0000
Boot0000* opensuse-secureboot HD(4,1962b000,4e800,11f33185-0ff8-493d-86bd-b9fee568adb8)File(\EFI\opensuse\shim.efi)
Boot0001* ubuntu HD(1,28,64000,7e798e0a-82c3-4719-95ed-d79675efd190)File(\EFI\ubuntu\shimx64.efi)
Boot0080* Mac OS X HD(1,28,64000,7e798e0a-82c3-4719-95ed-d79675efd190)File(\EFI\refind\refind_x64.efi)
Boot0081* Mac OS X ACPI(a0341d0,0)PCI(1f,2)03120a00000000000000HD(2,64028,1d02ba00,0b1ce04a-50b7-40b5-94f0-1a255d748d15)
Boot0082* ACPI(a0341d0,0)PCI(1f,2)03120a00000000000000HD(2,64028,19490d60,20cc89c9-1320-4d70-b8bb-fffdf9900374)
BootFFFF* ACPI(a0341d0,0)PCI(1f,2)03120a00000000000000HD(2,64028,19490d60,20cc89c9-1320-4d70-b8bb-fffdf9900374)File(\System\Library\CoreServices\boot.efi)
Si configuro el NextBoot con la opción -0080 -n
, después de reiniciar, aparece rEFInd. FFFF me trae directamente a OSX. 0081 parece fallar.
¡Gracias por la ayuda!
Respuestas:
Los sistemas operativos a veces restablecen el programa de arranque predeterminado, especialmente si actualizan sus cargadores de arranque estándar. Realmente no hay forma de evitar que esto suceda, por lo que simplemente debe saber cómo corregir el problema cuando ocurra. En Linux, esto se hace mediante el uso del
efibootmgr
programa. En OS X, se hace a través debless
. Ver aquí para más informaciónefibootmgr
.Si este malabarismo ocurre cada vez que reinicia, entonces algo está muy mal. Si Ubuntu restablece GRUB como el valor predeterminado en cada reinicio, entonces personalmente, lo eliminaría, pero no soy fanático de GRUB (lo suficiente como para bifurcarme para hacer REFInd en lugar de tratar con GRUB). Supongo que también podría llamar
efibootmgr
en un script de apagado, pero eso corre el riesgo de desconectarse de la realidad y causar problemas, por lo que sería reacio a hacerlo.EDITAR:
Sí, cambiar la
BootOrder
variable (a través de la-o
opción aefibootmgr
) como sugiere es apropiado. Puede eliminar la entrada de OpenSUSE con:Puede haber archivos OpenSUSE instalados que puede eliminar usando
rm
, probablementesudo rm -r /boot/efi/EFI/opensuse
de Ubuntu. (Estos archivos no deberían causar ningún daño per se, pero podrían ser confusos o reactivarse accidentalmente en el futuro). Puede eliminar Ubuntu GRUB de manera similar, aunque podría reinstalarse si / cuando Ubuntu lo actualiza en el futuro. Además, mantenerlo como método de respaldo de arranque puede tener sentido.Si deja instalado el GRUB de Ubuntu pero no desea verlo en el menú de rEFInd, puede usar
dont_scan_dirs
odont_scan_files
enrefind.conf
(probablemente/boot/efi/EFI/refind/refind.conf
desde Ubuntu) para ocultar la entrada de GRUB.fuente
ro quiet splash nomodeset vt.handoff=7
que son las mismas que en GRUB.root={something}
especificación enrefind_linux.conf
? Si no, necesita ser agregado. Debería poder hacer que esto funcione ejecutando elmkrlconf
script que viene con rEFInd, pero probablemente tendrá que agregar la--force
opción, como ensudo mkrlconf --force
(pero tal vez con la ruta completa amkrlconf
). Si eso todavía omite laroot=
opción, muéstrame qué sucede cuando escribescat /proc/cmdline
.refind-linux.conf
que hice usando sumkrlconf
-script tiene tres entradas con unaroot=
especificación-(ver aquí ). En GRUB2 tuve que agregar la opciónnomodeset
para ejecutar mi nVidia-GPU.cat /proc/comdline
me da:BOOT_IMAGE=/boot/vmlinuz-3.19.0-32-generic root=UUID=1b9ece72-754f-4f4b-85c0-5b5ed6fc89e1 ro quiet splash nomodeset vt.handoff=7
. Además, a pesar de que el proceso de arranque se cuelga visualmente en la pantalla de inicio de rEFInd, el sistema parece iniciarse, por ejemplo, mi fan-control-daemon se está iniciando y los ventiladores van despacio.Esto me sucedió y lo arreglé con lo siguiente mientras estaba en Ubuntu (esto es específico para su caso como lo es su arranque de Ubuntu
Boot0001*
):Si vuelve a escribir
sudo efibootmgr
, su orden de inicio debería ser ahoraBootOrder: 0080,0001
. Esto garantiza que Mac se inicie primero, y dado que rEFInd se instaló en Mac, entonces debería aparecer primero.fuente