¿Cómo reparar la falla de arranque debido a fstab incorrecto?

26

Parece que he agregado un registro incorrecto a /etc/fstab:

//servername/share    /mnt/share    cifs     defaults,username=myuser     0 0

Cuando lo hice mount -a, solicitó la contraseña del usuario para montar el recurso compartido de red. Parece que no puede continuar sin contraseña en el arranque, por lo que simplemente se cuelga.

¿Cómo puedo solucionar fstab para evitar fallas en el arranque?

altern
fuente

Respuestas:

38

Parece que he encontrado una solución:

  • en el indicador de grub, presione apara agregar opciones
  • agregar init=/bin/bashal final de la línea de comando del núcleo y presionar enter

El sistema se iniciará en un indicador como 'bash-3.2 #' ingrese los siguientes comandos en el indicador

  • mount -o remount,rw /
  • vim /etc/fstab

edite el archivo fstab comentando los errores agregando un # al comienzo de cada línea problemática, guarde el archivo

  • reiniciar presionando CTRL + ALT + SUPR
altern
fuente
44
Tuve que usar mount -o remount,rw / --target /para volver a montar con éxito en modo rw. De lo contrario, la montura elegía los valores incorrectos /etc/fstab, consulte los man mountdetalles.
laconbass
1
@laconbass tienes toda la razón, ¡ --target /es la clave!
sempasha
Esto sigue siendo cierto hoy, más de seis años después. De todos modos, en CentOS7, la clave para cambiar una entrada en el arranque ahora es la pestaña, y una vez en bash, debe montar su sistema de archivos (que aún no está montado en esta etapa) con un simple mount /dev/sda(X) /mnt(obviamente, cambiar la partición raíz con la correcta)
nnsense
Me salvó la vida ...
TheEyesHaveIt
Buena respuesta. Gracias.
Mohamed Bana
2

¿Qué le parece eliminar la entrada, crear una instantánea y luego intentar cambiar su / etc / fstab para que tenga una instantánea que funcione y que pueda revertir?

De acuerdo con la página de manual mount.cifs , también puede especificar una contraseña a través de password=arg. Además, de acuerdo con esa página de manual, no hay argumento, username=arg sino más bien user=arg. Pero puede ser diferente en su sistema, mejor revise su página de manual para los nombres de argumento correctos.

scai
fuente
manpor la victoria.
Tim
Estaba a punto de crear una instantánea, pero mientras estaba experimentando fstab, la instancia de vm se activó por alguna razón. Aparentemente, no haría la pregunta si pudiera arreglarlo yo mismo.
altern
2
La descripción de su problema es un poco confusa. ¿No puedes arrancar en modo de usuario único / recuperación? Solo debe intentar montar la raíz fs y dejar solo la fstab.
scai
1

La otra manera fácil es arrancar en modo live-cd y montar la partición correcta. ¡Entonces puedes arreglar lo que quieras!

usuario3435653
fuente
1

Encontré una solución para que el kernel de error del sistema no se cargue Use live cd para obtener acceso a su instalación existente. Una vez en reinstalar el kernel de Linux:

pacman -S Linux

Luego elimine el archivo fstab de etc / fstab:

rm /etc/fstab

Ahora reinstale systemd:

pacman -S systemd

Al reinstalar systemd, generará automáticamente un nuevo archivo fstab

Ahora reinstale el gestor de arranque en este caso, uso grub:

pacman -S grub os-prober

(la sonda os es útil si tiene más de 1 sistema operativo instalado en su disco duro / ssd)

grub-install --target=i386-pc /dev/sda

Una vez terminado, haga los archivos de configuración:

grub-mkconfig -o /boot/grub/grub.cfg

Luego desmonte las particiones en uso y reinicie

umount /dev/sdX 
reboot

Esto debería solucionar el problema, funcionó para mí.

Jp ---
fuente
0

Puede ser que sea demasiado tarde. Pero esto es para tu información. En esta situación, puede usar nano para cargar fstab y puede reiniciar después de editar el fstab.

sudo nano /etc/fstab
Choxmi
fuente