martes, 17 de marzo de 2026

Cómo configurar una memoria USB multiboot con 30+ distribuciones GNU Linux - Parte 3

Bienvenidos a la tercera parte de ésta serie de publicaciones que tiene el objetivo de crear una memoria USB Multiboot artesanal. En ésta entrega vamos a preparar y explicar los ficheros de configuración de GRUB2 y de Syslinux, cuyo contenido es que determina el orden del menú principal y de los sub-menus, así como su aspecto visual, fondo y tiempo de espera.

Manos a la obra...

El fichero grub.cfg

El mismo se encuentra en la ruta /mnt/multiboot/boot/grub2/grub.cfg que es donde montamos el dispositivo USB. Puedes usar tu editor preferido, yo usaré nano:

fraterneo@rainbow:~$ nano /mnt/multiboot/boot/grub2/grub.cfg

#INSERCIÓN DE MÓDULOS NECESARIOS insmod chain insmod png insmod part_msdos insmod fat insmod ntfs insmod syslinuxcfg insmod cpuid insmod ext2 insmod all_video insmod configfile insmod normal insmod linux insmod echo insmod search insmod regexp #TIEMPO DE ESPERA DEL MENÚ PARA INICIAR LA OPCIÓN POR DEFECTO set timeout=190 #TIPOGRAFÍA Y ESTILO DEL MENÚ SEGÚN SE CARGUE EN BIOS O EFI insmod font if loadfont /boot/grub2/fonts/unicode.pf2 ; then #if loadfont unicode ; then # Use shift key to avoid loading gfxterm if keystatus --shift ; then true ; else if [ "${grub_platform}" == "efi" ]; then insmod efi_gop insmod efi_uga else insmod vbe insmod vga insmod gfxterm terminal_output gfxterm if terminal_output gfxterm ; then true ; else terminal gfxterm fi fi insmod gfxterm fi fi set color_normal=white/black set color_highlight=white/light-blue export color_normal export color_highlight #IMAGEN DE FONDO Y RESOLUSIÓN DE LA PANTALLA set gfxmode=800x600 set gfxpayload=keep background_image /boot/background.png

#ENTRADA DE MENÚ PARA REINICIAR LA PC
menuentry "System Reboot" { reboot }

#MOSTRAR LA OPCION DE CARGAR SYSLINUX SI SE INICIÓ EN BIOS if [ ${grub_platform} == "pc" ]; then menuentry "Load Syslinux Boot Loader" { set root=(hd0,msdos1) chainloader +1 } fi
#ENTRADA PARA INICIAR DESDE DISCO LOCAL menuentry "Boot from internal disk (UEFI)" --class reboot { set root=(hd1) chainloader +1 }

A continuación coloco la imagen para el fondo. Puedes usar otra que prefieras, verifica qué resolución tiene y ajustas el parámetro set gfxmode=800x600 para que coincida con la misma. De lo contrario, GRUB ignora la imagen y se muestra sin fondo. Dicha imagen debes colocarla en la ruta /boot/ del dispositivo USB.


El fichero syslinux.cfg

El mismo se encuentra en la ruta /mnt/multiboot//boot/syslinux/syslinux.cfg

fraterneo@rainbow:~$ sudo nano /mnt/multiboot/boot/syslinux/syslinux.cfg

#CONFIGURACION DE COLORES Y FONDO DEL MENÚ
DEFAULT     vesamenu.c32 PROMPT     0 TIMEOUT     1200 MENU COLOR BORDER      0 #ffffffff #ee000000 std MENU COLOR TITLE     0 #ffffffff #ee000000 std MENU COLOR SEL     0 #ffffffff #85000000 std MENU COLOR UNSEL     0 #ffffffff #ee000000 std MENU COLOR PWDHEADER    0 #ff000000 #99ffffff rev MENU COLOR PWDBORDER    0 #ff000000 #99ffffff rev MENU COLOR PWDENTRY    0 #ff000000 #99ffffff rev MENU COLOR HOTKEY     0 #ff00ff00 #ee000000 std MENU COLOR HOTSEL     0 #ffffffff #85000000 std MENU ROWS     12 MENU VSHIFT     3 MENU RESOLUTION     800 600 MENU BACKGROUND     /boot/background.png MENU TITLE     fraterneo's GNU/Linux USB Multiboot v2.0 #OPCION DE MENU PARA INICIO DESDE EL DISCO LOCAL
LABEL boot-local MENU LABEL Boot from Local Disk COM32 chain.c32 APPEND hd1 MENU DEFAULT
#OPCION DE MENU PARA CARGAR GRUB2 LABEL grub2 MENU LABEL Load GRUB2 Boot Loader KERNEL /boot/grub2/i386-pc/lnxboot.img INITRD /boot/grub2/i386-pc/core.img


En ésta tercera entrega preparamos los ficheros de configuración para GRUB2 y Syslinux. Si has seguido las partes uno y dos de ésta seria, puedes probar booteando desde el dispositivo USB para confirmar que está funcionando de la manera esperada. De la cuarta parte en adelante comenzaremos a agregar las distribuciones de GNU Linux (al menos una por cada categoría).

Si tienes alguna duda o sugerencia, no dudes dejármelo saber en los comentarios.


Referencias:

https://wiki.syslinux.org/wiki/index.php?title=Menu

https://www.gnu.org/software/grub/manual/grub/grub.html




Artículos relacionados



Widget by Hoctro | Jack Book

0 comments:

Publicar un comentario