Flashcards: 102.2 - Gestor De Arranque
33 tarjetas de repaso. Usa el sistema de repeticion espaciada para memorizar.
P: Despues de modificar el archivo /etc/default/grub, que comando se debe ejecutar en un sistema Debian/Ubuntu para que los cambios surtan efecto?
R: b) update-grub. El comando update-grub es un wrapper de Debian/Ubuntu que equivale a grub-mkconfig -o /boot/grub/grub.cfg. Regenera el archivo grub.cfg a partir de /etc/default/grub y los scripts de /etc/grub.d/. Sin ejecutar este comando, los cambios en /etc/default/grub no tendran efecto. En Red Hat/CentOS se usaria grub2-mkconfig -o /boot/grub2/grub.cfg. El comando grub-install instala GRUB en el disco, no regenera la configuracion.
P: Por que NO se debe editar directamente el archivo /boot/grub/grub.cfg?
R: c) Porque es un archivo generado automaticamente que se sobreescribe al ejecutar update-grub. El archivo grub.cfg se genera automaticamente por grub-mkconfig / update-grub a partir de /etc/default/grub y los scripts de /etc/grub.d/. Cualquier modificacion manual se perdera la proxima vez que se ejecute update-grub, por ejemplo al instalar un nuevo kernel. El archivo tiene un comentario en su cabecera indicando “DO NOT EDIT THIS FILE”. La forma correcta de modificar la configuracion es editar /etc/default/grub y luego regenerar grub.cfg.
P: Estas en el menu de GRUB y necesitas arrancar temporalmente en modo de recuperacion. Que tecla pulsas primero y que parametro anades a la linea del kernel en un sistema con systemd?
R: b) Pulsar e y anadir systemd.unit=rescue.target a la linea linux. En el menu de GRUB, la tecla e permite editar la entrada seleccionada de forma temporal. Se busca la linea que comienza con linux y al final se anade systemd.unit=rescue.target (para sistemas con systemd). Otras opciones validas serian single o 1 (para SysVinit) o init=/bin/bash (para acceso directo a shell). Despues se pulsa Ctrl+X o F10 para arrancar. Estos cambios son temporales y se pierden en el siguiente reinicio.
P: Que script del directorio /etc/grub.d/ se encarga de detectar otros sistemas operativos instalados (como Windows)?
R: c) 30_os-prober. El script 30_os-prober ejecuta la herramienta os-prober para detectar otros sistemas operativos instalados en el disco (Windows, otros Linux) y genera entradas de menu para ellos. Los scripts de /etc/grub.d/ se ejecutan en orden numerico al invocar grub-mkconfig. 00_header genera la configuracion general, 10_linux detecta los kernels Linux instalados, y 40_custom permite anadir entradas personalizadas. Solo se ejecutan los scripts con permisos de ejecucion.
P: El sistema muestra el prompt grub rescue>. Cual de los siguientes comandos se debe ejecutar PRIMERO para intentar recuperar el arranque?
R: c) ls. El primer paso en grub rescue> es listar las particiones disponibles con ls para identificar cual contiene /boot/grub. Luego se prueban las particiones con ls (hd0,1)/boot/grub hasta encontrar los archivos. Despues se establece set prefix=(hd0,1)/boot/grub y set root=(hd0,1), seguido de insmod normal y finalmente normal para restaurar el menu de GRUB. Una vez arrancado el sistema, se reinstala GRUB permanentemente con grub-install y update-grub.
P: Como numera GRUB2 la primera particion del primer disco duro?
R: b) (hd0,1). En GRUB2, los discos se numeran desde 0 (hd0, hd1, hd2…) pero las particiones se numeran desde 1. Por lo tanto, la primera particion del primer disco es (hd0,1), que tambien puede escribirse como (hd0,msdos1) para MBR o (hd0,gpt1) para GPT. Esto difiere de GRUB Legacy, donde las particiones tambien se numeraban desde 0, haciendo que la primera particion del primer disco fuera (hd0,0).
P: Que comando se usa para instalar GRUB2 en un sistema UEFI?
R: b) grub-install --target=x86_64-efi --efi-directory=/boot/efi. En sistemas UEFI, grub-install necesita el parametro --target=x86_64-efi para especificar la plataforma y --efi-directory=/boot/efi para indicar donde esta montada la ESP (EFI System Partition). GRUB instalara su cargador como un archivo .efi en la ESP, tipicamente en /boot/efi/EFI/<distro>/grubx64.efi. La herramienta efibootmgr sirve para gestionar las entradas de arranque UEFI, pero no para instalar GRUB.
P: Que variable de /etc/default/grub se debe modificar para pasar el parametro nomodeset al kernel en TODAS las entradas del menu (incluidas las de recuperacion)?
R: b) GRUB_CMDLINE_LINUX="nomodeset". GRUB_CMDLINE_LINUX contiene los parametros del kernel que se aplican a todas las entradas del menu, incluidas las entradas de recuperacion. GRUB_CMDLINE_LINUX_DEFAULT solo se aplica a la entrada por defecto (no a las de recuperacion). GRUB_DEFAULT define cual es la entrada por defecto del menu (un numero, “saved” o un nombre), no los parametros del kernel. Despues de cualquier cambio, se debe ejecutar update-grub.
P: Que combinacion de variables en /etc/default/grub hace que GRUB recuerde la ultima entrada del menu seleccionada por el usuario?
R: b) GRUB_DEFAULT=saved y GRUB_SAVEDEFAULT=true. Con GRUB_DEFAULT=saved, GRUB utiliza la ultima entrada guardada como entrada por defecto. Con GRUB_SAVEDEFAULT=true, GRUB guarda automaticamente la seleccion del usuario cada vez que se elige una entrada del menu. Esto es util en sistemas de arranque dual donde el usuario quiere que se recuerde la ultima seleccion. Despues de configurar estas variables, se debe ejecutar update-grub para regenerar grub.cfg.
P: Cual es el archivo de configuracion de GRUB Legacy y en que se diferencia de GRUB2 respecto a la forma de editarlo?
R: b) menu.lst o grub.conf, se edita directamente con un editor de texto. GRUB Legacy usa el archivo /boot/grub/menu.lst (en Debian/Ubuntu) o /boot/grub/grub.conf (en Red Hat/CentOS) como configuracion, y se edita directamente. No existe un equivalente a grub-mkconfig o update-grub en GRUB Legacy. En contraste, GRUB2 usa grub.cfg que se genera automaticamente a partir de /etc/default/grub y los scripts de /etc/grub.d/. Esta es una diferencia fundamental entre ambas versiones.
P: Cual es la ubicacion del archivo de configuracion principal de GRUB2 en un sistema Red Hat/CentOS?
R: b) /boot/grub2/grub.cfg. En Red Hat/CentOS/Fedora, GRUB2 almacena su archivo de configuracion en /boot/grub2/grub.cfg y los comandos llevan el prefijo grub2- (por ejemplo, grub2-mkconfig, grub2-install). En Debian/Ubuntu, la ubicacion es /boot/grub/grub.cfg. El archivo menu.lst pertenece a GRUB Legacy, no a GRUB2.
P: Que tecla se debe mantener pulsada durante el arranque para mostrar un menu de GRUB2 que esta oculto en un sistema con BIOS?
R: c) Shift. En sistemas con BIOS, se debe mantener pulsada la tecla Shift durante el arranque para forzar la aparicion de un menu de GRUB2 oculto (cuando GRUB_TIMEOUT_STYLE=hidden esta configurado). En sistemas con UEFI, se pulsa la tecla Esc. Esto es importante para acceder al menu cuando se necesita editar parametros del kernel o seleccionar una entrada diferente.
P: En GRUB Legacy, como se identifica la primera particion del primer disco duro?
R: c) (hd0,0). En GRUB Legacy, tanto los discos como las particiones se numeran desde 0. Por lo tanto, la primera particion del primer disco es (hd0,0). Esto difiere de GRUB2, donde los discos se numeran desde 0 pero las particiones desde 1, haciendo que la primera particion del primer disco sea (hd0,1). Esta diferencia en la numeracion es un punto importante para el examen.
P: Que herramienta se utiliza para gestionar las entradas de arranque almacenadas en la NVRAM de UEFI?
R: c) efibootmgr. efibootmgr es la herramienta para gestionar las entradas de arranque UEFI almacenadas en la NVRAM del firmware. Permite listar las entradas (efibootmgr -v), cambiar el orden de arranque (efibootmgr -o 0002,0001), y establecer una entrada para el proximo reinicio (efibootmgr -n 0002). No debe confundirse con grub-install, que instala GRUB en el disco.
P: Que valor de la variable GRUB_TIMEOUT en /etc/default/grub hace que el menu espere indefinidamente la seleccion del usuario?
R: b) -1. El valor -1 en GRUB_TIMEOUT hace que GRUB2 espere indefinidamente hasta que el usuario seleccione una entrada del menu. El valor 0 arranca inmediatamente la entrada por defecto sin mostrar el menu. Cualquier valor positivo indica los segundos de espera antes de arrancar automaticamente. infinite y 999 no son valores especiales reconocidos.
P: En la consola de GRUB2 (prompt grub>), que secuencia de comandos se necesita para arrancar manualmente un sistema Linux?
R: b) set root, linux, initrd, boot. Para arrancar manualmente desde la consola de GRUB2, se sigue esta secuencia: 1) set root=(hd0,1) para establecer la particion que contiene /boot, 2) linux /vmlinuz root=/dev/sda1 para cargar el kernel especificando la particion raiz, 3) initrd /initrd.img para cargar la imagen initramfs, y 4) boot para iniciar el arranque. La opcion (d) con chainloader se usa para arrancar otros bootloaders (como Windows).
P: Que script del directorio /etc/grub.d/ se utiliza para anadir entradas personalizadas al menu de GRUB2?
R: d) 40_custom. El script 40_custom en /etc/grub.d/ esta destinado a las entradas personalizadas del administrador. Su contenido se incluye directamente en grub.cfg al regenerar la configuracion. 00_header genera la configuracion general, 10_linux detecta los kernels Linux instalados, y 30_os-prober detecta otros sistemas operativos. Solo se ejecutan los scripts que tienen permisos de ejecucion.
P: Que combinacion de teclas se usa para arrancar con los cambios temporales despues de editar una entrada del menu de GRUB2?
R: c) Ctrl+X o F10. Despues de editar una entrada del menu de GRUB2 (con la tecla e), se pulsa Ctrl+X o F10 para arrancar con los cambios temporales. Pulsar Esc cancela la edicion y vuelve al menu. Estos cambios son temporales y se pierden en el siguiente reinicio. Para cambios permanentes se debe editar /etc/default/grub y regenerar grub.cfg.
P: Cual es la diferencia entre el prompt grub> y grub rescue>?
R: c) grub> es la consola completa con todos los comandos; grub rescue> aparece cuando GRUB no puede encontrar sus modulos y solo tiene comandos basicos. El prompt grub> aparece cuando GRUB ha cargado sus modulos correctamente pero no encontro grub.cfg o el usuario presiono c. Tiene acceso a todos los comandos. El prompt grub rescue> aparece cuando GRUB no puede encontrar sus propios modulos (por ejemplo, tras redimensionar particiones). Solo dispone de comandos basicos como ls, set e insmod. Para recuperarse desde grub rescue> se debe usar set prefix= para indicar la ubicacion de los modulos.
P: Que variable de /etc/default/grub controla si se detectan automaticamente otros sistemas operativos instalados?
R: b) GRUB_DISABLE_OS_PROBER. La variable GRUB_DISABLE_OS_PROBER controla si el script 30_os-prober detecta automaticamente otros sistemas operativos al regenerar grub.cfg. Si se establece a true, no se buscaran otros sistemas operativos. Si es false, os-prober buscara sistemas como Windows u otras instalaciones de Linux y creara entradas de menu para ellos. GRUB_DISABLE_RECOVERY controla si se muestran las entradas de recuperacion.
P: Que comando se ejecuta en Debian/Ubuntu para regenerar el archivo grub.cfg despues de modificar /etc/default/grub?
R: update-grub. update-grub es un wrapper de Debian/Ubuntu equivalente a grub-mkconfig -o /boot/grub/grub.cfg. Lee la configuracion de /etc/default/grub y ejecuta los scripts de /etc/grub.d/ para generar el archivo grub.cfg. En Red Hat/CentOS se usa grub2-mkconfig -o /boot/grub2/grub.cfg.
P: Que comando se usa para instalar GRUB2 en el MBR del disco /dev/sda en un sistema con BIOS?
R: grub-install /dev/sda. grub-install /dev/sda instala GRUB2 en el MBR del disco especificado. Se indica el disco completo (no una particion). En Red Hat/CentOS el comando es grub2-install /dev/sda. Para sistemas UEFI se requiere --target=x86_64-efi --efi-directory=/boot/efi.
P: En la consola de GRUB2, que comando lista los discos y particiones disponibles?
R: ls. En la consola de GRUB2 (grub> o grub rescue>), el comando ls lista todos los discos y particiones disponibles, mostrando entradas como (hd0), (hd0,1), (hd0,2), etc. Se puede usar ls (hd0,1)/ para listar el contenido de una particion especifica y verificar si contiene los archivos de arranque.
P: Que comando de GRUB2 se usa para generar el archivo de configuracion y guardarlo directamente en la ruta indicada?
R: grub-mkconfig. grub-mkconfig genera el archivo de configuracion de GRUB2 a partir de /etc/default/grub y los scripts de /etc/grub.d/. Se usa con la opcion -o para especificar la ruta de salida: grub-mkconfig -o /boot/grub/grub.cfg. Sin -o, muestra el resultado por pantalla sin guardarlo. En Red Hat/CentOS es grub2-mkconfig.
P: Que comando permite listar las entradas de arranque UEFI almacenadas en la NVRAM del firmware?
R: efibootmgr. efibootmgr sin opciones lista las entradas de arranque UEFI con su numero, nombre y orden. Con -v (verbose) muestra informacion detallada incluyendo las rutas de los cargadores. Permite gestionar el orden de arranque y crear o eliminar entradas de arranque UEFI.
P: Tip de examen: La tecla Shift (mantenida) es la forma de mostrar un menu de GRUB oculto en si…
R: La tecla Shift (mantenida) es la forma de mostrar un menu de GRUB oculto en sistemas BIOS. En UEFI se usa Esc.
P: Tip de examen: En grub rescue>, la clave es usar set prefix= para indicar donde estan los m…
R: En grub rescue>, la clave es usar set prefix= para indicar donde estan los modulos de GRUB, luego insmod normal para cargar el modulo normal y finalmente ejecutar normal para volver al menu estandar.
P: Que hace el comando GRUB_DEFAULT?
R: Entrada por defecto (numero, “saved”, o nombre de entrada). Con “saved” recuerda la ultima entrada seleccionada
P: Que hace el comando GRUB_SAVEDEFAULT?
R: Si es “true”, guarda la ultima entrada seleccionada (requiere GRUB_DEFAULT=saved)
P: Que hace el comando GRUB_TIMEOUT?
R: Segundos de espera del menu. Valor -1 espera indefinidamente
P: Que hace el comando GRUB_CMDLINE_LINUX?
R: Parametros del kernel para TODAS las entradas (incluida recovery)
P: Que es/son 7. GRUB Legacy (version 0.97)?
R: Aunque GRUB Legacy esta obsoleto, el examen puede incluir preguntas sobre sus diferencias con GRUB2.
P: Que es/son Trampas del examen?
R: > Errores comunes y distinciones criticas que LPI suele evaluar en este subtema: