Si recientemente configuró una configuración de arranque dual con Windows y Linux, es posible que se haya encontrado con el mismo problema que yo: Windows no aparece como una opción en el menú de GRUB. Te mostraré cómo lo resolví (y la razón técnica detrás de esto).
Para ser más específico, instalé CachyOS en una unidad separada de mi unidad de Windows 11. Ya había instalado varias distribuciones de Linux en esta unidad varias veces y el menú de inicio normalmente simplemente funciona. Mi opción de arranque de Windows 11 aparecería sin ningún esfuerzo por mi parte. En este caso, sin embargo, fueron necesarios algunos pasos adicionales para que funcionara.
Por qué Windows no aparece en GRUB
Resulta que hoy en día las instalaciones de GRUB a menudo vienen con os-prober deshabilitado, y esa era la razón por la que Windows no aparecía. Si no lo sabe, os-prober es un paquete que permite a GRUB identificar automáticamente otros sistemas operativos instalados en su PC. Cuando está deshabilitado, GRUB no podrá identificar Windows sin intervención manual.
La razón de esto es la desconfianza hacia el paquete os-prober. Los desarrolladores de distribuciones que empaquetan GRUB han optado por deshabilitar os-prober como medida de seguridad desde 2021, cuando el desarrollador de Canonical Julian Andres Klode describió su razonamiento para deshabilitar os-prober en Ubuntu. Dijeron que «os-prober es inherentemente inseguro ya que monta todas las particiones en su disco usando grub-mount para verificar si hay otro sistema operativo». Aunque desde entonces se han realizado parches, muchos simplemente no confían en ellos.
Puede habilitar fácilmente os-prober nuevamente si lo desea. Sin embargo, si debería o no hacerlo depende de su situación. No me dedico al negocio de dar consejos sobre ciberseguridad sin conocer al menos su modelo de amenaza.
Por mi parte, me sentí cómodo volviendo a habilitar os-prober dado que mi investigación me dijo que la mayoría de las preocupaciones estaban relacionadas con las soluciones alternativas de arranque seguro, y ya deshabilité el arranque seguro en mi PC. Nuevamente, depende de usted decidir cuál es la ruta más segura. Con ese fin, le mostraré dos opciones diferentes, una de las cuales evitará os-prober por completo.

Cómo configurar los ajustes del cargador de arranque GRUB2
Elija un sistema operativo predeterminado e incluso muestre una imagen de fondo.
Opción fácil: habilitar os-prober
Si se siente seguro al habilitar os-prober dadas las implicaciones de seguridad, puede hacerlo editando su configuración predeterminada de GRUB. Normalmente puede encontrar el archivo de configuración en /etc/default/grubpor lo que editarlo requerirá abrirlo con el editor de texto de tu preferencia y con acceso administrativo. Para editarlo con nano, usé este comando:
sudo nano /etc/default/grub
Desplácese por el archivo hasta encontrar una línea que diga #GRUB_DISABLE_OS_PROBER=false. Descomentarlo eliminando el símbolo #.
Eso es todo lo que necesitas hacer para habilitar os-prober, además de guardar el archivo. En nano, puede hacerlo presionando Ctrl+o seguido de Enter para confirmar el nombre del archivo, luego Ctrl+x para salir de nano. No olvides actualizar GRUB, como te explicaré más adelante.
Otra opción que es más segura pero un poco más complicada es omitir la habilitación de os-prober y, en su lugar, agregar Windows al menú de inicio de GRUB usted mismo.
Para hacer esto, primero necesita saber dónde ubica su sistema Linux la partición EFI de su instalación de Windows. Puede averiguarlo ejecutando el siguiente comando, que enumera todos los discos y sus propósitos:
sudo dfisk -l
Puedo ver que en mi unidad de Windows hay un dispositivo con la etiqueta «Sistema EFI» ubicado en /dev/nvme0n1p1. Copiaré esa dirección y la tendré lista para el siguiente comando blkid, que revelará el UUID del dispositivo, que necesitamos para una entrada de inicio personalizada:
sudo blkid /dev/nvme0n1p1
Busque el valor UUID entre comillas y anótelo. Luego, vamos a editar los de GRUB. 40_custom archivo, que nos permite agregar entradas de arranque personalizadas a GRUB. Estoy usando nano para hacer esto, pero puedes usar tu editor de texto preferido.
sudo nano /etc/grub.d/40_custom
Pegue el siguiente bloque de código y luego reemplace your-Windows-EFI-partition-UUID con el UUID que encontraste.
menuentry "Windows" --class windows --class os {
insmod ntfs
search --no-floppy --set=root --fs-uuid your-Windows-EFI-partition-UUID
ntldr /bootmgr
}
También tenga en cuenta que puede cambiar el texto dentro de las comillas después de «entrada de menú» con el nombre que desee que aparezca en la entrada de inicio de Windows.
De cualquier manera, recuerda actualizar GRUB
Después de realizar cambios en su archivo de configuración predeterminado de GRUB o agregar una entrada de inicio personalizada, no olvide regenerar su configuración de GRUB. Este proceso es lo que realmente hace que los cambios surtan efecto. Para ser honesto, yo mismo me olvidé de esto cuando desactivé os-prober y me confundí cuando Windows no apareció después de reiniciar.
Para facilitar las cosas, algunas distribuciones tienen alias preconfigurados para actualizar GRUB, como update-grub. Puedes intentar ejecutarlo primero (como sudo), pero si no te funciona, siempre puedes actualizarlo manualmente con este comando:
sudo grub-mkconfig -o /boot/grub/grub.cfg
Espere a que se complete la regeneración y luego intente reiniciar. Debería ver Windows, además de cualquier otro sistema operativo que haya instalado, en el menú de inicio de GRUB.
Considere reemplazar GRUB para evitar problemas
Si le preocupan las vulnerabilidades de os-prober y no quiere lidiar con la edición manual del menú de GRUB, le recomiendo buscar administradores de arranque alternativos.
Por ejemplo, podría reemplazar GRUB con systemd-boot, aunque falta soporte para BIOS heredado (a diferencia de UEFI). También podrías considerar Clover Bootloader, que fue diseñado originalmente para Hackintoshes y es compatible con UEFI y BIOS. Otra opción que te brindará una experiencia similar al administrador de arranque de macOS es rEFInd.
