This is an old revision of the document!
Defenderse en la consola de comandos de GRUB2
Manual oficial de GRUB2: https://www.gnu.org/software/grub/manual/grub/grub.html
Cuando se arranca el sistema GNU/Linux y se detiene en el prompt “grub>”, se encuentra en la shell de comandos del cargador de arranque GRUB 2. Eso significa que GRUB 2 arrancó normalmente y cargó el módulo normal.mod (junto con otros módulos que se encuentran en /boot/grub/XXX/), pero lamentablemente no encontró su archivo grub.cfg. Este prompt tiene muchas más funcionalidades que el de rescate.
Si por el contrario el prompt que se muestra es “grub rescue>” significa que no pudo encontrar el fichero “normal.mod”, que suele significar que no pudo encontrar ninguno de los archivos de arranque necesarios. Esto puede ocurrir por algunas razones, por ejemplo cuando han cambiado las asignaciones de las unidades, ya sea por un nuevo kernel. edición de la tabla de particiones, mover discos de sitio de manera física, instalación de otros sistemas operativos, etc. En estos escenarios los ficheros de arranque todavía están ahí, pero GRUB2 no puede encontrarlos. Mediante la terminal de rescate de GRUB2 habría que buscar dichos ficheros de arranque, identificar sus sus ubicaciones y posteriormente arrancar el sistema y arreglar su configuración de GRUB una vez dentro más cómodamente. Este prompt está más limitado en comandos que cuando no se está en modo rescate, por ejemplo no se disfrutaría de autocompletado o historial.
Las terminales de GRUB2 pueden usarse para descubrir imágenes de arranque, kernels y sistemas de archivos raíz. El acceso es completo a todos los sistemas de archivos de la computadora, sin importar los permisos.
En instancias de GRUB2 funcionales, para ingresar en la consola se puede pulsar la tecla “C”. La distribución de teclado es la de USA, por lo que puede ser de ayuda tener una imagen de la distribución de teclas en teclados americanos.
Los siguientes comandos funcionan en ambos tipos de terminales de GRUB2.
# El primer comando que debes ejecutar invoca el paginador, recomendado para paginar salidas de comandos largos. grub> set pager=1 # Se listan los discos y particiones. Discos con MBR se mostrarán particiones "msdos". En el ejemplo se muestran dos discos con dos particiones. grub> ls (hd0) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,gpt1) (hd1,gpt2) # Se lista el contenido de una partición concreta. El objetivo es encontrar la partición con el sistema de ficheros que tienen /boot. gtub> ls (hd1,1)/ lost+found/ bin/ boot/ cdrom/ dev/ etc/ home/ lib/ lib64/ media/ mnt/ opt/ proc/ root/ run/ sbin/ srv/ sys/ tmp/ usr/ var/ vmlinuz vmlinuz.old initrd.img initrd.img.old