defenderse_en_la_linea_de_comandos_de_grub2
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
defenderse_en_la_linea_de_comandos_de_grub2 [2022/04/15 13:11] – busindre | defenderse_en_la_linea_de_comandos_de_grub2 [2022/04/20 01:00] (current) – busindre | ||
---|---|---|---|
Line 3: | Line 3: | ||
**Manual oficial de GRUB2**: https:// | **Manual oficial de GRUB2**: https:// | ||
- | Cuando se arranca el sistema GNU/Linux y se detiene en el prompt " | + | Cuando se arranca el sistema GNU/Linux y se detiene en el prompt " |
Si por el contrario el prompt que se muestra es "grub rescue>" | Si por el contrario el prompt que se muestra es "grub rescue>" | ||
+ | |||
+ | Tampoco es necesario dedicar mucho tiempo a intentar arrancar un Linux mal instalado a través de GRUB2. A veces es más simple y socorrido arrancar una distribución live, montar el sistema de ficheros y mediante chroot volver a instalar y configurar grub2. Algunas distros traen comandos chroot más avanzados que hacen un montaje de dev, proc, o incluso de haber sido configurada la red en la distro Live, integran el fichero resolv.conf en el entorno enjaulado, etc. A grandes rasgos, estos serían los comandos básicos compatibles con cualquier distribución. | ||
+ | <code bash> | ||
+ | mount /dev/sda1 /mnt | ||
+ | ## Opcional pero aconsejables ## | ||
+ | mount -t proc proc /mnt/proc | ||
+ | mount -t sysfs sys /mnt/sys | ||
+ | mount -o bind /dev /mnt/dev | ||
+ | mount -t devpts pts / | ||
+ | ################################ | ||
+ | chroot /mnt | ||
+ | # Si el fichero resolv.conf de la distro GNU/Linux a recuperar no existe o no esta bien configurado, | ||
+ | |||
+ | # De no existir un fichero initrd o initramfs en /boot se puede ejecutar el comando " | ||
+ | # mkinitcpio -p linux | ||
+ | |||
+ | # Instalar Grub. | ||
+ | grub-install --target=i386-pc /dev/sdX | ||
+ | grub-mkconfig -o / | ||
+ | </ | ||
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, | 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, | ||
Line 26: | Line 46: | ||
(hd0) (hd0, | (hd0) (hd0, | ||
(hd1) (hd1,gpt1) (hd1,gpt2) | (hd1) (hd1,gpt1) (hd1,gpt2) | ||
+ | (hd2) (hd2, | ||
+ | # Obtener información sobre el tamaño de disco, partición y tipo de sistema de ficheros y UUID. | ||
+ | |||
+ | grub> ls (hd0) # Muestra información sobre el disco hd0 | ||
+ | grub> ls (hd1, | ||
# Se lista el contenido de una partición concreta. El objetivo es encontrar la partición con el sistema de ficheros que tienen /boot. | # Se lista el contenido de una partición concreta. El objetivo es encontrar la partición con el sistema de ficheros que tienen /boot. | ||
Line 32: | Line 57: | ||
grub> ls (hd1, | grub> ls (hd1, | ||
- | lost+found/ | + | bin/ dev/ home/ lib64/ opt/ root/ sbin/ sys/ usr/ boot/ etc/ lib/ mnt/ proc/ run/ srv/ tmp/ var/</code> |
- | srv/ sys/ tmp/ usr/ var/ vmlinuz vmlinuz.old initrd.img initrd.img.old | + | |
+ | NOTA: Para salir del prompt de GRUB2 y volver al menú normal suele usarse la tecla " | ||
- | # Leer archivos del sistema de ficheros, por ejemplo /etc/issue (http:// | + | **Arrancar un sistema a través de GRUB2 con el prompt normal** |
+ | |||
+ | En sistemas sin problemas en Grub, algunos sistemas no muestran el menú GRUB2 por defecto y pasan directamente al arranque del sistema. En estos casos se debe usar la tecla Esc (BIOS) o bien Shift (EFI/Vbox VMs, etc). Lo primero para arrancar un sistema operativo desde GRUB2 sería localizar la partición donde el directorio /boot, aunque en algunos sistemas se pueden encontrar enlaces en "/" | ||
+ | |||
+ | <code bash> | ||
+ | # La primera línea establece la partición en la que se encuentra el sistema de archivos raíz. | ||
+ | grub> set root=(hd0, | ||
+ | # Ubicación del kernel deseado y la partición usando la sintaxis habitual de Linux (ej, /dev/sde2 == (hd4, | ||
+ | grub> linux / | ||
+ | # Línea establece el archivo initrd (normalmente initramfs o initrd), que debe tener el mismo número de versión que el kernel (depende de la distro puede no mostrase versión si solo hay uno). | ||
+ | grub> initrd / | ||
+ | # Arrancar el sistema. | ||
+ | grub> boot | ||
+ | </ | ||
+ | |||
+ | **Arrancar un sistema a través de GRUB2 con el prompt de rescate** | ||
+ | |||
+ | Los comandos son muy similares a los usados en el prompt normal, pero deben cargarse los módulos " | ||
+ | |||
+ | <code bash> | ||
+ | grub rescue> set root=(hd0, | ||
+ | grub rescue> set prefix=(hd0, | ||
+ | grub rescue> insmod normal | ||
+ | # insmod (hd0, | ||
+ | grub rescue> normal | ||
+ | </ | ||
+ | |||
+ | Si los pasos anteriores no arrancan el sistema, por ejemplo porque el modulo normal no se encuentre (lo instala grub-install) mostrando el mensaje " | ||
+ | <code bash> | ||
+ | grub rescue> set root=(hd0, | ||
+ | grub rescue> set prefix=(hd0, | ||
+ | grub rescue> insmod linux | ||
+ | grub rescue> linux / | ||
+ | grub rescue> initrd / | ||
+ | grub rescue> boot | ||
+ | </ | ||
+ | |||
+ | Una vez arrancado el equipo, ya se puede de manera más cómoda arreglar el GRUB2 y que los cambios sean permanentes. | ||
+ | |||
+ | **Otros comandos útiles de GRUB2** | ||
+ | <code bash> | ||
+ | # Leer archivos del sistema de ficheros, por ejemplo | ||
grub> cat (hd1, | grub> cat (hd1, | ||
+ | grub> configfile (hd0, | ||
+ | |||
+ | Arch Linux \r (\l inicializada el \d a las \t) | ||
+ | |||
+ | # Comparar dos archivos. | ||
+ | grub> cmp (hd0, | ||
+ | |||
+ | # Cambiar el color o imagen de fondo. | ||
+ | grub> background red | ||
+ | grub> background_image (hd0, | ||
+ | |||
+ | # Cambiar el color de letra y fondo. | ||
+ | grub> set color_normal=white/ | ||
+ | |||
+ | # Carga una configuración grub especificando la ruta. Útil si el nombre se confundió en la instalación y GRUB2 no lo encuentra, por ejemplo " | ||
+ | configfile (hd0, | ||
+ | |||
+ | # Equivale a F10 or CTRL-x, simplemente arranca el sistema si todo está correcto. | ||
+ | grub> boot | ||
+ | |||
+ | # Montar un fichero imagen, por ejemplo iso. | ||
+ | grub> loopback loop (hd0, | ||
+ | grub> ls (loop)/ | ||
+ | |||
+ | # Reiniciar. | ||
+ | reboot | ||
- | Arch Linux \r (\l inicializada el \d a las \t)</ | + | # Apagar. |
+ | halt | ||
+ | </ | ||
- | **Arrancar un sistema a través | + | **Enlaces |
- | Algunos sistemas no muestran el menu GRUB2 por defecto y pasan directamente al arranque del sistema. En estos casos se debe usar la tecla Esc (BIOS) o bien Shift (EFI/Vbox VMs, etc). | + | * [[grub2_en_centos_6.x|Instalar |
+ | * [[backup_disco_rescate_de_grub2|Backup / Disco de rescate para el cargador de arranque GRUB2]] | ||
+ | * [[rootear_sistemas_gnu_linux_desde_grub|Conseguir root en sistemas GNU/Linux con GRUB sin tener la password | ||
+ | * [[https://wiki.archlinux.org/ |
defenderse_en_la_linea_de_comandos_de_grub2.1650021072.txt.gz · Last modified: 2022/04/15 13:11 by busindre