Fuerza fsck.ext4 al reiniciar, pero realmente "contundente"

18

Uno de mis servidores Ubuntu 10.04 me está dando problemas. Cuando ejecuto fsck.ext4 -n /dev/sda5 , me dice que hay errores en el conteo libre de inode, conteo de bloque libre y más.

Lo intenté:

touch /forcefsck

También probado:

shutdown -rF now

y aún así, después de reiniciar, veo errores.

¡Acabo de comprobar en mi netbook eeePC, Ubuntu 10.10, y tengo el mismo problema!

¿Cómo puedo forzar un "poderoso" "forzado" realmente "arreglar seriamente mi sistema de archivos" fsck del sistema de archivos "/" al reiniciar?

Aclaración: ejecuto fsck.ext4 -n porque es un sistema de archivos montado, para comprobar si hay errores. Esto me dice que hay. Pensé que el fsck automático cada 30 montajes durante el proceso de arranque es precisamente para encargarse de los errores en el sistema de archivos raíz. Pero no lo hace en mi caso. Podría reiniciar con un LiveCD y corregir los errores, y luego reiniciar de nuevo, pero ese es un tiempo de inactividad serio para un servidor en vivo. Un reinicio, fsck automático y luego continuar el arranque es mucho más sostenible en un servidor en vivo, y creo que debería ser el comportamiento correcto.

Información adicional: aquí está la salida. Parece algo que el autofsck corregirá, ¿no?

root@server:~# fsck.ext4 -n /dev/sda5
e2fsck 1.41.11 (14-Mar-2010)
Warning!  /dev/sda5 is mounted.
Warning: skipping journal recovery because doing a read-only filesystem check.
/dev/sda5 contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (1849368, counted=1948909).
Fix? no

Free inodes count wrong (545504, counted=552134).
Fix? no


/dev/sda5: ********** WARNING: Filesystem still has errors **********

/dev/sda5: 116752/662256 files (0.2% non-contiguous), 795324/2644692 blocks
    
pregunta UrkoM 24.11.2010 - 14:27

6 respuestas

10

En la página man de e2fsck:

  

"Tenga en cuenta que, en general, no es seguro ejecutar e2fsck en sistemas de archivos montados. La única excepción es si se especifica la opción -n y no se especifican las opciones -c, -l o -L. es seguro hacerlo, los resultados impresos por e2fsck no son válidos si el sistema de archivos está montado. Si e2fsck pregunta si debe o no verificar un sistema de archivos que está montado, la única respuesta correcta es '' no ''. Solo los expertos que realmente sepan lo que están haciendo, deberían considerar responder a esta pregunta de cualquier otra forma ".

Entonces, si comprueba un FS montado con fsck incluso utilizando la opción -n, el resultado puede no ser válido en absoluto. No verifique los sistemas de archivos montados. Use un Live-CD / Live-USB.

Si no revisas el sistema de archivos mientras está montado, no entiendo por qué necesitas usar touch /forcefsck , puedes desmontarlo y solucionarlo. Pero si es el caso y después de una corrección, su FS todavía tiene errores, entonces puede considerar el uso de:

e2fsck -cy /dev/sda5

Eso solucionará un problema relacionado con el disco duro llamado bloques defectuosos que pueda tener (esto llevará mucho tiempo).

Si desea verificar un sistema de archivos montado, no sé cómo proceder, pero creo que debería crear otra pregunta.

    
respondido por el Nyamiou The Galeanthrope 24.11.2010 - 21:27
22

Sé que este es un hilo muy antiguo, pero recientemente tuve que resolver este problema, así que quise publicar cómo forzar al sistema operativo a solucionar los problemas encontrados con fsck durante el arranque (para 12.04).

Necesita ejecutar el comando sudo touch /forcefsck . Esto hará que realice un fsck en el próximo inicio. Puede ver los resultados del fsck en /var/log/boot.log.

Sin embargo, no se garantiza que fsck arregle nada de lo que encuentre. Para hacer esto, necesitaría editar el archivo / etc / default / rcS. Hay una línea al final de ese archivo:

FSCKFIX=no

Esto debe cambiarse a lo siguiente:

FSCKFIX=yes

Esto tendrá el mismo efecto que ejecutar el fsck con la opción -y que forzará todas las correcciones que se puedan implementar y no solicitará la interacción del usuario.

Esto le permitirá ejecutar el fsck como lo estaba haciendo el OP sin tener que recurrir al arranque desde un disco en vivo, lo que no siempre es posible, especialmente si se encuentra en un sistema remoto.

    
respondido por el Brian 12.11.2014 - 14:50
12
sudo touch /forcefsck
sudo reboot

Tienes un error tipográfico: estás tocando / forcefcsk. La "c" y la "s" se intercambian. fsck es la abreviatura de FileSystemChecK.

    
respondido por el Dan Benamy 31.05.2012 - 15:09
3

No puede forzar un fsck / que lo reparará porque la partición está en uso. Intente ejecutar el control desde una partición diferente o un CD en vivo.

    
respondido por el charlie-tca 24.11.2010 - 19:33
1

Puede hacer que las revisiones se hagan automáticamente de la siguiente manera:

Tune2fs -c 5 -i 10 / dev / sda1

-c es el número máximo de montajes antes de ejecutar fsck y -i es el número máximo de días antes de ejecutar fsck .

En este caso, se realizará cada 5 montajes o cada 10 días, lo que ocurra primero.

Tengo dos computadoras, una con Linux SuSE 13.2 y la otra con Linux Mint 18.0 y ambas funcionan perfectamente.

    
respondido por el hk3jld 01.01.2017 - 00:00
0

touch /forcefsck por sí solo no garantizaba que mi sistema ejecutara fsck en el próximo inicio. También necesitaba ejecutar:

sudo tune2fs -c 1 /dev/<my partition>

por ej.

sudo tune2fs -c 1 /dev/sda1

Más explicaciones que encontré están aquí: Cómo Fuerza fsck para comprobar el sistema de archivos después de reiniciar

    
respondido por el Clock ZHONG 17.12.2016 - 09:21

Lea otras preguntas en las etiquetas