Cómo comprobar si se utiliza un gestor de arranque específico en Linux

LinuxLinuxBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás cómo comprobar qué gestor de arranque (bootloader) se está utilizando en un sistema Linux, centrándote específicamente en GRUB. Explorarás los archivos de configuración clave ubicados en el directorio /boot/grub para entender los componentes de tu instalación de GRUB.

Luego, examinarás el archivo /etc/default/grub para verificar los ajustes de configuración principales que controlan el comportamiento de GRUB. Finalmente, inspeccionarás los registros del gestor de arranque utilizando el comando dmesg para confirmar qué gestor de arranque se cargó durante el inicio del sistema.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/TextProcessingGroup(["Text Processing"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/TextProcessingGroup -.-> linux/grep("Pattern Searching") subgraph Lab Skills linux/ls -.-> lab-558753{{"Cómo comprobar si se utiliza un gestor de arranque específico en Linux"}} linux/cat -.-> lab-558753{{"Cómo comprobar si se utiliza un gestor de arranque específico en Linux"}} linux/grep -.-> lab-558753{{"Cómo comprobar si se utiliza un gestor de arranque específico en Linux"}} end

Comprobar GRUB con ls /boot/grub

En este paso, exploraremos los archivos de configuración del gestor de arranque GRUB. GRUB (GRand Unified Bootloader) es el gestor de arranque predeterminado para la mayoría de las distribuciones Linux, incluyendo Ubuntu. Es el primer software que se ejecuta cuando se inicia el equipo y es responsable de cargar el núcleo del sistema operativo en la memoria.

Los principales archivos de configuración de GRUB se encuentran típicamente en el directorio /boot/grub. Vamos a listar el contenido de este directorio para ver qué hay dentro.

Abre la terminal si no está abierta. Recuerda que puedes encontrar el icono de Xfce Terminal en el lado izquierdo de tu escritorio.

Escribe el siguiente comando y presiona Enter:

ls /boot/grub

El comando ls se utiliza para listar archivos y directorios. Cuando se proporciona una ruta como /boot/grub, se listan los contenidos de ese directorio específico.

Deberías ver una lista de archivos y directorios, que podría ser algo así (la salida exacta puede variar ligeramente dependiendo del sistema):

fonts  grub.cfg  grubenv  i386-pc  locale  unicode.pf2  x86_64-efi

Esta salida muestra los diversos componentes de tu instalación de GRUB. El archivo más importante aquí es grub.cfg, que contiene la configuración real del menú de arranque. Analizaremos ese archivo en el siguiente paso.

Comprender el contenido de /boot/grub es el primer paso para aprender cómo se inicia tu sistema Linux.

Haz clic en Continuar para pasar al siguiente paso.

Verificar la configuración de GRUB con cat /etc/default/grub

En el paso anterior, listamos el contenido del directorio /boot/grub y vimos el archivo grub.cfg. Si bien grub.cfg es el archivo de configuración activo, generalmente se genera automáticamente a partir de la configuración definida en /etc/default/grub y de los scripts en /etc/grub.d/.

El archivo /etc/default/grub contiene las opciones de configuración principales que controlan el comportamiento de GRUB, como el sistema operativo predeterminado para arrancar, el tiempo de espera antes de arrancar y los parámetros del núcleo.

Veamos el contenido del archivo /etc/default/grub utilizando el comando cat. El comando cat se utiliza para mostrar el contenido de archivos.

Escribe el siguiente comando en tu terminal y presiona Enter:

cat /etc/default/grub

Verás el contenido del archivo de configuración predeterminada de GRUB. Se verá algo así:

## If you change this file, run 'update-grub' afterwards to update
## /boot/grub/grub.cfg.

GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

## Uncomment to enable booting from a full graphics screen using grub-gfxpayload
## and grub-theme-ubuntu-mate ...
#GRUB_GFXPAYLOAD_LINUX=keep

## Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

## The resolution used on graphical terminal
## Note that you can only use resolutions specified in your gfxpayload.
## See the Graphics chapter in the Grub manual for more details.
#GRUB_GFXMODE=640x480

## Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to the Linux kernel
#GRUB_DISABLE_LINUX_UUID=true

## Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

## Uncomment to get a beep at boot start
#GRUB_INIT_TUNE="480 440 1"

Este archivo contiene varias configuraciones, cada una explicada por comentarios que comienzan con #. Por ejemplo:

  • GRUB_DEFAULT: Especifica la entrada del menú predeterminada para arrancar. 0 generalmente significa la primera entrada.
  • GRUB_TIMEOUT: Establece el tiempo en segundos antes de que se arranque automáticamente la entrada predeterminada.
  • GRUB_CMDLINE_LINUX_DEFAULT: Contiene los parámetros del núcleo que se pasan a la entrada de arranque predeterminada.

Comprender este archivo es crucial si alguna vez necesitas modificar las opciones de arranque, como agregar parámetros del núcleo para solucionar problemas o cambiar el sistema operativo predeterminado.

Haz clic en Continuar para pasar al siguiente paso.

Inspeccionar los registros del gestor de arranque en dmesg

En los pasos anteriores, examinamos los archivos de configuración de GRUB. Ahora, vamos a analizar los mensajes generados por el núcleo durante el proceso de arranque. Estos mensajes se almacenan en un buffer y se pueden ver utilizando el comando dmesg.

dmesg (diagnostic message buffer) es un comando que imprime el buffer de mensajes del núcleo. Contiene información sobre dispositivos de hardware, controladores de dispositivos y otros mensajes relacionados con el núcleo que se generan durante el inicio del sistema. Esta es una herramienta valiosa para solucionar problemas de arranque.

Escribe el siguiente comando en tu terminal y presiona Enter:

dmesg

Esto mostrará una gran cantidad de texto, mostrando todos los mensajes del núcleo desde que se inició el sistema. La salida puede ser abrumadora, por lo que es común filtrarla o enviarla a un paginador como less para verla pantalla por pantalla.

Para ver mensajes específicamente relacionados con el gestor de arranque o el proceso de arranque temprano, a menudo puedes buscar palabras clave como "GRUB", "boot" o "kernel command line".

Vamos a intentar filtrar la salida utilizando grep para encontrar líneas que contengan "Command line":

dmesg | grep "Command line"

El símbolo | se llama tubería (pipe). Toma la salida del comando de la izquierda (dmesg) y la envía como entrada al comando de la derecha (grep). grep es una herramienta poderosa para buscar patrones de texto. En este caso, estamos buscando líneas que contengan la frase "Command line".

Deberías ver una salida similar a esta, mostrando los parámetros de la línea de comandos del núcleo pasados por el gestor de arranque:

[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-... root=UUID=... ro quiet splash

Esta línea muestra la imagen del núcleo que se está arrancando (/boot/vmlinuz-...) y los parámetros del núcleo (root=UUID=... ro quiet splash). Estos parámetros a menudo se establecen en el archivo /etc/default/grub que vimos en el paso anterior.

Explorar dmesg es esencial para diagnosticar problemas que ocurren durante el proceso de arranque, ya que proporciona información detallada sobre lo que está haciendo el núcleo desde el principio.

Haz clic en Continuar para completar este laboratorio.

Resumen

En este laboratorio, aprendimos cómo comprobar si GRUB es el gestor de arranque utilizado en un sistema Linux. Comenzamos listando el contenido del directorio /boot/grub utilizando el comando ls para identificar la presencia de archivos de configuración de GRUB, en particular grub.cfg. Este paso confirmó la existencia de una instalación de GRUB.

Luego, examinamos el archivo /etc/default/grub utilizando el comando cat. Este archivo contiene la configuración principal de GRUB, como las opciones de arranque predeterminadas y los valores de tiempo de espera. Al inspeccionar este archivo, verificamos adicionalmente que GRUB está configurado como el gestor de arranque y obtuvimos información sobre su comportamiento.