Arranque en grub rescue

Resuelto
letroolldu67 Mensajes publicados 39 Estado Miembro -  
mamiemando Mensajes publicados 33228 Fecha de registro   Estado Moderador Última intervención   -
Hola,

Desde una reinstalación de Ubuntu, me encuentro en grub rescue.
¡El comando ls no funciona! Me dice "Sistema de archivos desconocido".
¿Qué debo hacer?
También he leído que con una memoria de arranque de Windows 10 (teniendo Windows 10 instalado) podría hacer "bootrec /fixmbr", a lo que la línea de comandos responde "Operación exitosa", luego hago "bootrec /fixboot", pero la línea de comandos me responde "Acceso denegado". ¡No sé qué más hacer!

Configuración: Android / Chrome 94.0.4606.71

2 respuestas

mamiemando Mensajes publicados 33228 Fecha de registro   Estado Moderador Última intervención   7 940
 
Hola,

Confirmo lo que dice Gribouille, lo más sencillo en tu caso es usar
boot-repair
.

Sin embargo, los enfoques de Windows no te ayudarán a reinstalar
grub
, puedes olvidarte de ellos.

Finalmente, ten en cuenta que, en absoluto, cualquier live USB es suficiente para reparar
grub
. Pero esto requiere algunos conocimientos (y equivale a hacer lo que te hace hacer
boot-repair
).

Reparar grub sin boot-repair

1) Arrancar el ordenador desde un live USB (por ejemplo, una unidad que permita instalar Ubuntu).

2) Abre una terminal y conviértete en root, con
sudo -s
(Ubuntu) o
su -
(otras distribuciones).

Luego, ubica con el comando
fdisk -l
o
parted -l
la partición asociada a la partición
/
del sistema Linux que deseas arrancar. Si
/boot
está en una partición separada, también deberás identificarla.

Ejemplo: Aquí buscamos una partición asociada a un sistema de archivos Linux. Podemos dudar entre
/dev/sda6
y
/dev/sda7
, pero como
/
es generalmente significativamente más pequeña que
/home
, deducimos que probablemente
/dev/sda6
es la que nos interesa.

Ten en cuenta que en un live USB,
/dev/sda
probablemente corresponde al live USB y
/dev/sdb
al disco duro que contiene tu Linux, y para una instalación clásica de Ubuntu, la partición / probablemente será
/dev/sdb5
.

Ejemplo:

(root@silk) (~) # fdisk -l
[sudo] Contraseña de mando:
Disco /dev/sda: 476,94 GiB, 512110190592 bytes, 1000215216 sectores
Modelo de disco: Micron_1100_MTFD
Unidades: sector de 1 × 512 = 512 bytes
Tamaño de sector (lógico / físico): 512 bytes / 512 bytes
Tamaño de E/S (mínimo / óptimo): 512 bytes / 512 bytes
Tipo de etiqueta de disco: gpt
Identificador de disco: F7977EE1-814B-4FC2-BD0B-4F0E9F0D433D

Dispositivo Inicio Fin Sectores Tamaño Tipo
/dev/sda1 2048 534527 532480 260M Sistema EFI
/dev/sda2 534528 567295 32768 16M Reservado Microsoft
/dev/sda3 567296 501470811 500903516 238,8G Datos básicos de Microsoft
/dev/sda4 501471232 503234559 1763328 861M Entorno de recuperación de Windows
/dev/sda5 503234560 511047679 7813120 3,7G Partición de intercambio de Linux
/dev/sda6 511047680 608704511 97656832 46,6G Sistema de archivos Linux
/dev/sda7 608704512 1000214527 391510016 186,7G Sistema de archivos Linux


Nota importante: en lo que sigue, supongo que
/
corresponde a
/dev/sda6
, debes, por supuesto, reemplazar
/dev/sda6
por el dispositivo asociado a tu propia partición (por ej.
/dev/sdb5
).

Nota: si instalaste Linux con LVM, también verás aparecer los nombres de los volúmenes lógicos (los dispositivos cuyo nombre comienza con
/dev/mapper
), que necesitaremos un poco más adelante. En mi ejemplo, no los vemos, por lo que es una instalación sin LVM. Si Linux está instalado en el mismo disco duro que Windows, es una instalación sin LVM. Para más información sobre qué es LVM y para qué sirve, te remito a esta página.

3) Montar el sistema Linux del disco duro en la carpeta
/linux
(que vamos a crear) del live USB. También montaremos
/dev
en
/linux/dev
porque el comando
update-grub
lo necesitará.

Luego hay algunas variaciones dependiendo de si instalaste Linux con o sin LVM.

a) Si es una instalación sin LVM:

mkdir /linux mount /dev/sda6 /linux mount --bind /dev /linux


b) Si es una instalación con LVM (no cifrada):

mkdir /linux mount /dev/mapper/vg-root /linux mount --bind /dev /linux


(el nombre
vg-root
puede variar: corresponde al nombre del volumen lógico que contiene
/
).

c) Si es una instalación con LVM (cifrada):

cryptsetup luksOpen /dev/sda6 sda6_crypt # Esto crea /dev/mapper/sda6_crypt # Introducir la contraseña LUKS de la partición apt install lvm2 modprobe dm-mod vgchange -ay lvscan # Aquí deberíamos ver el dispositivo asociado a la partición descifrada, por ej. /dev/mapper/vg-root mount /dev/mapper/vg-root /linux mount --bind /dev /linux 


4) En este punto, es importante verificar que hemos montado la partición correcta en
/linux
observando el resultado de
ls /linux
. Deberían aparecer las subcarpetas
/linux/dev
,
/linux/boot
,
/linux/home
, etc.

Si
/boot
está instalada en una partición dedicada, debes montarla en
/linux/boot
. Ten en cuenta que esto no es generalmente el caso para una instalación clásica. Podemos controlar el contenido de
/linux/boot
con el comando
ls /linux/boot
para asegurarnos.

5) Reposicionar
/
al nivel de
/linux
, así todo ocurre "como si" hubiéramos arrancado normalmente. Luego montamos los últimos elementos necesarios para el buen funcionamiento de
update-grub
.

chroot /linux/ mount -t proc proc /proc mount -t sysfs sys /sys mount -t devpts devpts /dev/pts


6) Si es una instalación LVM, iniciar el servicio asociado:

/etc/init.d/lvm2 start


7) Reparar grub:

update-grub


Si no se encuentra un módulo grub (por ej.
normal.mod
), cópialo en
/boot
(por ej.
cp /usr/lib/grub/i386-pc/* /boot/grub/i386-pc/
). Ten en cuenta que este tipo de error no debería ocurrir.

8) Si es una instalación LVM, lista los servicios asociados (ver
ls /etc/init.d/lvm*
) y detén cada uno de ellos:

/etc/init.d/lvm2 stop # Igual para cada servicio lvm


9) Salir correctamente:

umount /proc umount /sys umount /dev/pts exit umount /linux/dev umount /linux reboot


¡Buena suerte!
2
Gribouille
 
si tienes el soporte de instalación (disco o pendrive), arranca desde él y haz clic en "probar ubuntu"
después podrás intentar la reparación del arranque en una consola
sudo add-apt-repository -y ppa:yannubuntu/boot-repair && sudo apt update && sudo apt install -y boot-repair ; boot-repair
luego reparación recomendada
tu ordenador debe estar conectado a la red
0