Comprende el código bien previamente a utilizarlo a tu proyecto y si tquieres aportar algo puedes compartirlo con nosotros.
Solución:
Si está utilizando MBR, GRUB puede llamar os-prober
para escanear todas las particiones en busca de sistemas de arranque. os-prober
(y su primo, linux-boot-prober
que es llamado por os-prober
) buscará todos los discos conocidos y sus particiones en busca de sistemas de arranque. Para sistemas Linux, buscará particiones que contengan ./vmlinuz*
y ./initrd*
/./initramfs*
o particiones que contienen un directorio llamado /boot
y los archivos anteriores.
grub-mkconfig
intentará usar os-prober
si puede encontrarlo e imprimirá un grub.cfg
incluyendo todos los sistemas que encontró.
Personalmente, creo que esto es menos trabajo que usar UEFI, pero sigue leyendo.
Para UEFI, en primer lugar, definitivamente puede tener varias particiones EFI. Sin embargo, no es una buena idea tener varias particiones EFI en un sistema de arranque múltiple. Esta respuesta SU entra en muchos detalles por qué, principalmente porque puede tener subdirectorios dentro de una sola partición EFI y tener diferentes sistemas en cada subdirectorio. Simplemente haga un montaje de enlace en un lugar diferente de la partición EFI para que sea el /boot
directorio en cada sistema.
Por ejemplo, puede crear dos cargadores diferentes, digamos:
loaderentriesmint.conf
title Mint Linux
linux mintvmlinuz
initrd mintinitrd.img
options root=PARTUUID=14420948-2cea-4de7-b042-40f67c618660 rw
loaderentriescentos.conf
title CentOS
linux centosvmlinuz-linux
initrd centosinitramfs-linux.img
options root=PARTUUID=14420948-2cea-4de7-b042-40f67c618661 rw
Necesita el UUID para que el cargador de arranque sepa qué sistema de archivos raíz usar. Ahora puede colocar el kernel y ramfs iniciales de cada instalación en su propio directorio en la partición EFI (uno en mint
y otro en centos
).
En cada sistema, a continuación, haga una /etc/fstab
con un montaje de enlace para usar la parte derecha de la partición EFI como el /boot
directorio. Por ejemplo:
/efi vfat defaults 0 0
/efi/EFI/mint /boot none defaults,bind 0 0
y
/efi vfat defaults 0 0
/efi/EFI/centos /boot none defaults,bind 0 0
Cada sistema ahora podrá colocar su kernel en el lugar correcto en la actualización, y el arranque se realiza a través de UEFI.
Enlaces:
- ¿Cuántas particiones EFI puede tener una computadora?
Si haces una separada /boot
e instale Grub en el MBR, no necesita actualizar el grub de Mint cada vez que cambia de sistema operativo. Tengo esta configuración exacta en mi computadora portátil con una partición para Mint, una /boot
partición, y otra partición que uso para probar diferentes distribuciones. Cada vez que instalo una nueva distribución, simplemente instalo os-prober
y correr grub-mkconfig -o /boot/grub/grub.cfg
(con la partición /boot montada, obviamente) y funciona bien. Lo único que debe tener cuidado es deshacerse de los núcleos antiguos y las imágenes initramfs en la partición de arranque cuando instala una nueva distribución.