Tengo una configuración de arranque dual:
- Ubuntu 16.04 LTS
- ventanas
Actualmente, cuando quiero reboot
pasar de Ubuntu a Windows, lo uso grub-reboot
con el número apropiado como argumento. Esto funciona bien.
Sin embargo, a veces Windows necesita reiniciarse para que un determinado programa pueda instalarse o actualizarse y tengo que seleccionar manualmente la entrada correcta del menú de inicio de grub. ¿Existe una forma similar (desde la interfaz de usuario de Windows) de indicarle a grub qué entrada iniciar?
Supongo que el grub-reboot
comando pasa el argumento a un archivo que a su vez es leído por grub reboot
.
editar (con respecto a mi respuesta seleccionada): Actualmente estoy pensando en montar la unidad ext4 que contiene /boot y programar la edición. Es posible que esto lleve bastante tiempo, ya que lo hago en mi tiempo libre además de mi trabajo no tecnológico de 40 horas a la semana. ^^
Respuesta1
La forma más fácil es con Grub.
Es engorroso controlarlo grub
desde Windows. Se requiere una aplicación de terceros para acceder a Ubuntu desde Windows y algo de piratería. Sin embargo, desde la parte superior de esta publicación:Cómo cambiar el orden en mis distribuciones de arranque dual, puede configurar grub
para que se reinicie automáticamente en la última opción del menú. Entonces, cuando inicia inicialmente con Windows y se activa a las 2 a.m. para ejecutar actualizaciones, grub
Windows recargará para que pueda finalizar las actualizaciones correctamente.
Cuando reinicia manualmente y elige Ubuntu en grub
todos sus próximos reinicios, carga automáticamente Ubuntu. Esta característica funciona igualmente bien si tiene errores en el kernel actual y desea grub
reiniciar automáticamente en una versión anterior del kernel que seleccionó.
Cómo hacer que Grub repita la última selección de arranque
Esto es bastante sencillo. Usando sudo
poderes edite /etc/default/grub
y cambie lo siguiente:
#GRUB_DEFAULT=0 # Rather than option #1, we'll always default to last boot choice.
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
La primera línea la comentarás y justo debajo insertarás las dos líneas siguientes.
Guarde el archivo y escriba en la terminal:
sudo update-grub
Línea de comando de Ubuntu para reiniciar en Windows
Actualmente usas algo como esto:
sudo grub-reboot x # Where x is Windows zero-based grub menu number
sudo reboot now
De este Stack Exchange modificadorespuestapuedes usar el valor predeterminado de grub para reiniciar en Windows. Copie este código en su ~/.bashrc
archivo:
function reboot-to-windows {
WINDOWS_TITLE=`grep -i "^menuentry 'Windows" /boot/grub/grub.cfg|head -n 1|cut -d"'" -f2`
sudo grub-set-default "$WINDOWS_TITLE"
sudo reboot
}
- Guarde el
~/.bashrc
archivo con la nuevareboot-to-windows
función. - Cierre su sesión de terminal actual.
- Abra una nueva sesión de terminal para
~/.bashrc
cargar los cambios. - Puede escribir
: ~/.bashrc
para recargarlo en la sesión de terminal existente, pero algunas personas recomiendan no hacerlo.
Para reiniciar Windows desde la línea de comando use:
reboot-to-windows
Si Windows se reinicia automáticamente cuando no estás mirando, Windows se reinicia. Esto permite que las actualizaciones automáticas de Windows se procesen normalmente durante múltiples ciclos de reinicio que a veces utiliza Windows.
Respuesta2
Puedes replicar lo que grub-reboot
hace. Es sólo un script que eventualmente llama:
grub-editenv /boot/grub/grubenv set next_entry="Windows"
¿Dónde Windows
está el nombre de la entrada del menú de grub? Puede que no sea eso
Ejecuté eso. Todo lo que hace es next_entry=Windows
insertarlo /boot/grub/grubenv
. En la línea 2. Entonces, si es solo un archivo, en un sistema de archivos,puedes hacer exactamente lo mismo desde Windows. Es un problema de Windows que hay que resolver, pero aquí está la descripción general de alto nivel:
Monte el disco donde reside el arranque. Esta es probablemente la parte más difícil porque probablemente sea ext4.Estepodría ayudar, pero no es inconcebible que necesite Linux ejecutándose con Windows para editarlo.
Como señala muru, no tiene por qué ser tan difícil.Puede pasar
/boot
a su propia partición FAT32. Esto hace que sea trivial montarlo en Windows.Inserte
next_entry=Windows
(o lo que sea) en el archivo después del comentario, antes de los hashes.- Desmontar.
- Reiniciar.
Scripting esoen Windowsestá fuera de mi zona de confort y no es realmente lo que hacemos aquí. Pero eso debería ser todo lo que necesitas hacer.
Respuesta3
grub-set-default
debería hacer lo mismo que grub-reboot, pero hacer que la configuración sea permanente. Esto no es exactamente de la interfaz de usuario de Windows, como preguntaste, pero tal vez funcione para ti.
Respuesta4
No has dicho qué versión de Windows ni si estás en UEFI.
Si está utilizando un arranque UEFI adecuado (y no un arranque heredado), es posible iniciar temporalmente desde la entrada de arranque UEFI de Windows. En Linux, esto se puede hacer usando herramientas como efibootmgr
. En Windows, yo personalmente usoFácilUEFI. Es gratuito para uso personal, GUI, pero no para uso empresarial o CLI. No puedo garantizar su seguridad. También parece algo lento, pero parece funcionar.
En mi propia configuración, que usa Arch Linux (kernel EFI shim, sin GRUB) y Windows 10, así es como se ve, después de seleccionar "Administrar opción de arranque EFI" en la pantalla de inicio:
Si está utilizando el arranque UEFI, debería ver algo similar para Windows, además de una única entrada para Ubuntu (que carga GRUB), además de algunas otras opciones específicas del dispositivo. La opción de inicio único se puede usar para configurar el inicio en la entrada de inicio UEFI para Windows una vez y luego volver a iniciar con GRUB después de eso. Después de configurar eso, reinicia normalmente.