Como probablemente sepa, GRUB2 es el cargador de arranque por defecto de la mayoría de los sistemas operativos Linux. GRUB significa GRand Unified Bootloader. El cargador de arranque GRUB es el primer programa que se ejecuta cuando se inicia el ordenador. Es responsable de cargar y transferir el control al Kernel del sistema operativo. Y entonces el Kernel se hace cargo, e inicializa el resto del sistema operativo. En este tutorial, permítanme mostrarles cómo configurar los ajustes del cargador de arranque GRUB2 en el sistema Ubuntu. Podemos configurar los ajustes ya sea editando directamente el archivo de configuración de grub utilizando cualquier editor de texto o utilizando cualquier aplicación GUI como Grub-customizer.
He probado los pasos dados a continuación guía en Ubuntu 16.04 y 18.04 LTS, sin embargo, estas instrucciones podrían funcionar en todos los sistemas operativos Linux que utilizan el cargador de arranque GRUB2.
Configurar la configuración del cargador de arranque GRUB2
Como ya he dicho, podemos configurar la configuración del cargador de arranque desde la línea de comandos o desde la GUI.
Veamos primero la forma de la línea de comandos.
Atención: El archivo de configuración por defecto para GRUB2 es /boot/grub/grub.cfg. No debería editar o modificar este archivo, a menos que esté muy familiarizado con GRUB2. Este es el archivo principal para arrancar el sistema operativo Linux. Cualquier error de configuración en este archivo puede llevarle a terminar con un sistema Ubuntu roto. Así que, ¡no toque este archivo!
El archivo /boot/grub/grub.cfg es generado automáticamente por grub-mkconfig usando plantillas de /etc/grub.d y configuraciones de /etc/default/grub. Cualquier cambio que haga en el archivo /etc/default/grub se reflejará en el GRUB2.
Primero, haga una copia de seguridad del archivo /etc/default/grub antes de hacer cualquier cambio.
$ sudo cp /etc/default/grub /etc/default/grub.bak
El contenido del archivo típico de grub tendrá el siguiente aspecto.
$ cat /etc/default/grub
Salida de ejemplo:
# If you change this file, run 'update-grub' afterwards to update# /boot/grub/grub.cfg.# For full documentation of the options in this file, see:# info -f grub -n 'Simple configuration'GRUB_DEFAULT=0GRUB_HIDDEN_TIMEOUT=0GRUB_HIDDEN_TIMEOUT_QUIET=trueGRUB_TIMEOUT=10GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"GRUB_CMDLINE_LINUX=""# Uncomment to enable BadRAM filtering, modify to suit your needs# This works with Linux (no patch required) and with any kernel that obtains# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"# Uncomment to disable graphical terminal (grub-pc only)#GRUB_TERMINAL=console# The resolution used on graphical terminal# note that you can use only modes which your graphic card supports via VBE# you can see them in real GRUB with the command `vbeinfo'#GRUB_GFXMODE=640x480# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux#GRUB_DISABLE_LINUX_UUID=true# Uncomment to disable generation of recovery mode menu entries#GRUB_DISABLE_RECOVERY="true"# Uncomment to get a beep at grub start#GRUB_INIT_TUNE="480 440 1"
Cuando hayas realizado algún cambio en este archivo, deberás ejecutar el siguiente comando para aplicar los cambios al GRUB2.
$ sudo update-grub
Hagamos unos cuantos ajustes en el gestor de arranque GRUB2.
1. Seleccionar el SO por defecto (GRUB_DEFAULT)
Abrir el archivo /etc/default/grub utilizando cualquier editor de texto, por ejemplo nano.
$ sudo nano /etc/default/grub
Buscar la línea «GRUB_DEFAULT». Podemos seleccionar el sistema operativo por defecto para arrancar usando esta opción. Si establecemos el valor como «0», arrancará el primer sistema operativo de la entrada del menú de arranque de GRUB. Si lo estableces como «1», arrancará el segundo SO, y así sucesivamente.
Configurar el SO por defecto en el archivo Grub en Ubuntu
También, si tienes más de un SO en tu sistema, puedes arrancar el último sistema operativo usando el valor GRUB_DEFAULT=saved. Cada vez que reinicie el sistema, el último sistema operativo iniciará el arranque. Ten en cuenta que debes añadir una línea GRUB_SAVEDEFAULT=true para que este truco funcione.
Configurar grub para arrancar el último sistema operativo
También puedes especificar el nombre de la entrada del sistema operativo para arrancar un sistema operativo concreto. Por ejemplo, si hay una entrada llamada «Lubuntu 16.04 LTS» en el menú BOOT, podría usar GRUB_DEFAULT=»Lubuntu 16.04 LTS» para arrancar Lubuntu por defecto. Ten en cuenta que debes especificar el valor entre comillas.
No olvides actualizar los cambios realizados en el archivo grub ejecutando el siguiente comando:
$ sudo update-grub
2. Establecer el tiempo de espera del SO (GRUB_TIMEOUT)
Por defecto, la entrada seleccionada del menú de arranque comenzará a arrancar en 10 segundos.
Puede aumentar o disminuir este ajuste de tiempo de espera. Si el valor es «0», el SO por defecto comenzará a arrancar inmediatamente. Si el valor es «5» , el menú de arranque aparecerá durante 5 segundos, para que puedas seleccionar qué SO quieres cargar cuando se inicie el sistema.
Configurar el valor del tiempo de espera de Grub
3. Cambiar la imagen de fondo de GRUB
Para cambiar la imagen de fondo de GRUB, necesitas copiar tu imagen preferida en la ubicación /boot/grub/.
$ sudo cp ostechnix.png /boot/grub/
También puedes usar imágenes en formato JPG/JPEG. Pero GRUB sólo soporta formatos de imagen JPG/JPEG de 256 colores. Por lo tanto, es mejor utilizar imágenes en formato PNG.
Alternativamente, puede mencionar directamente la ruta del archivo de imagen en el archivo /etc/default/grub como a continuación.
$ sudo nano /etc/default/grub
Add la siguiente línea:
GRUB_BACKGROUND="/home/sk/ostechnix.png"
Sustituye la ruta de la imagen por la tuya.
Una vez realizados los cambios necesarios en el archivo GRUB, Guárdalo y ciérralo.
Para aplicar los cambios, debes ejecutar el siguiente comando:
$ sudo update-grub
Deberías ver la siguiente salida:
Generating grub configuration file ...Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.Found background image: ostechnix.pngFound linux image: /boot/vmlinuz-4.15.0-23-genericFound initrd image: /boot/initrd.img-4.15.0-23-genericFound linux image: /boot/vmlinuz-4.15.0-20-genericFound initrd image: /boot/initrd.img-4.15.0-20-genericFound memtest86+ image: /boot/memtest86+.elfFound memtest86+ image: /boot/memtest86+.bindone
Reinicia y comprueba si los cambios funcionan o no.
Cambiar la imagen de fondo de GRUB en Ubuntu
Lectura sugerida:
- Cómo proteger con contraseña el cargador de arranque GRUB en Linux
Configurar la configuración del cargador de arranque GRUB2 usando Grub-customizer
Algunos de vosotros puede que no os sintáis cómodos con la línea de comandos. Si eres uno de ellos, puedes usar una herramienta gráfica llamada «Grub-customizer» para configurar los cargadores de arranque de Grub2 y Burg.
Usando Grub-customizer, podemos,
- Editar, eliminar, renombrar y reordenar las entradas del menú de arranque,
- Ocultar o mostrar el menú de arranque,
- Cambiar la entrada de arranque por defecto,
- Cambiar el color del texto de las entradas del menú de arranque,
- Cambiar la imagen de fondo del menú de arranque,
- Aumentar o disminuir el tiempo de arranque,
- Editar los parámetros del kernel,
- Reinstalar Grub en el MBR de Windows.
Grub-customizer tiene un PPA oficial para Ubuntu y sus derivados como Linux Mint. Puedes añadirlo e instalar Grub-customizer ejecutando los siguientes comandos uno a uno:
$ sudo add-apt-repository ppa:danielrichter2007/grub-customizer
$ sudo apt update
$ sudo apt install grub-customizer
Una vez instalado, lánzalo desde Dash o Menú. Así es como se ve la interfaz por defecto de Grub-customizer.
interfaz de Grub-customizer
Como puedes ver en la captura de pantalla anterior, Grub-customizer tiene las siguientes tres pestañas.
- Configuración de la lista,
- Configuración general,
- Configuración de la apariencia.
En la configuración de la lista, puede editar, borrar, renombrar y reordenar (mover) las entradas del menú de arranque. Por ejemplo, para cambiar el nombre de una entrada del menú, sólo tiene que hacer clic con el botón derecho sobre ella, elegir Renombrar e introducir el nombre que desee.
De forma similar, para mover una entrada, elíjala, haga clic con el botón derecho y luego haga clic en Mover hacia arriba o Mover hacia abajo. También puedes usar las flechas ARRIBA/ABAJO de la barra de menús para mover las entradas.
Editar las entradas del menú de arranque en el personalizador de grub
En la sección de ajustes generales, podemos,
- Cambiar la entrada de arranque por defecto (puede ser útil cuando se hace un arranque dual),
- Acceder a la última entrada arrancada, es decir, arrancar el último sistema operativo,
- Mostrar/Ocultar la visibilidad del menú de arranque,
- Cambiar el retraso del menú de arranque,
- Cambiar los parámetros del kernel.
Configuración general del personalizador de grub
En Configuración de la apariencia, podemos,
- Cambiar la fuente de las entradas del menú de arranque,
- Configurar el color de la fuente,
- Configurar la imagen de fondo, etc.
Configuración de la apariencia del personalizador de Grub
No olvides pulsar el botón Guardar después de hacer cualquier cambio.
También hay una sección adicional llamada «Configuración avanzada» en la parte inferior derecha de la interfaz del personalizador de Grub. En la sección de ajustes avanzados, puede añadir, eliminar, activar/desactivar y editar rápidamente los valores de varios ajustes del cargador de arranque como GRUB_DEFAULT, GRUB_TIMEOUT, GRUB_MENU_PICTURE y algunos más.
configuración avanzada del personalizador de GRUB
De nuevo, os advierto – no editéis ni modifiquéis la configuración de GRUB2 en sistemas de producción. Te recomiendo que pruebes estas configuraciones en cualquier máquina virtual y luego las apliques en tu escritorio personal.
Lectura sugerida:
- Cómo arrancar en modo rescate o en modo emergencia en Ubuntu
Las configuraciones avanzadas de GRUB2 son muy útiles para el arranque de sistemas de producción.