# [FSCK] Soluciones para chequeos molestos (abierto)

## sirope

Hola,

Trato de encontrar una manera de hacer menos tortuosos los chequeos con fsck al arrancar la máquina... 

El detalle es que tengo una partición de 5gb para / ... quisiera que esta partición se chequeara al apagarse el pc y no al encender.

Las demás particiones como /usr/portage/distfiles o /docs no son vitales para que arranque la máquina.. me gustaría que estos chequeos se ejecutaran, si es posible, en segundo plano, luego de encender... no le veo sentido a esperar 5 minutos a que fsck chequee 100gb de documentos antes de arrancar el pc..

He encontrado algo de autofsck, que supuestamente pasa los chequeos al apagar (y además te pregunta).. lo cual es excelente, pero me interesa más los chequeos en segundo plano.. además, no sé que tan confiable será o si alguien lo habrá probado.. tal vez algún paquete en portage pueda hacer algo por mi.. y el sistema de archivos que uso es ext4..  no se si de algo importa..

gracias

saludooooos

----------

## esculapio

fsck trabaja en particiones no montadas. Podrias en fstab poner las particiones que no quieras que se revisen cambiando el 1 por 0 y hacer un chequeo manual de vez en cuando. Sino con tune2fs creo (es una herramienta en ext3) tendrias cambiar la cantidad de "montadas" antes del check.

----------

## i92guboj

Como bien dice esculapio, fsck no se debe ejecutar en particiones montadas r/w. Por tanto lo del segundo plano es parte de la ciencia ficción por ahora, a no ser que estés hablando de particiones montadas con permiso de solo lectura.

Si es posible, teóricamente, y tan solo si tu file system lo soporta realizar algún tipo de chequeo on-line, pero eso no te ayudará cuando el fs esté roto, porque necesitarás un chequeo off-line antes de poder montarlo. En cuanto a moverlos al apagado, técnicamente no veo por qué no sería posible, pero nunca lo había pensado y no tengo ni idea del tema.

----------

## deovex

Tengo una duda, tengo los siguientes particiones:

/	                        ext4	- 10 Gb

/boot	                        ext2	- 50 Mb

/home	                ext4	- 50 Gb

/usr/src	                ext2	- 2 Gb

/var	                        ext4	- 1 Gb

/usr/portage	        ext2	- 1 Gb

/usr/portage/distfiles	ext2	- 5 Gb

/tmp	                        ext2	- 10 Gb

/var/tmp	                ext2	

Ahora bien, hablando del fsck.

Como ven que las tres particiones: /usr/portage, /usr/portage/distfiles y /tmp junto /var/tmp no son relevantes por lo tanto en el fstab cambio el 1 por 0 para que no chequeen dichos particiones lo cual sería mas rápido al arrancar Gentoo, voy a tener algun inconveniente?

Gracias.

Saludos!

----------

## i92guboj

En principio no debería tener ningún gran problema con las mismas. Me refiero a nada grave. Aunque si se corrompe alguno de estos fs siempre es posible que las utilidades relacionadas fallen si el fs está mal. 

Por ejemplo emerge podría dar algún error de i/o si la partición de portage se corrompe y no puede leer un ebuild o un paquete de la misma. En ese caso tendría que desmontarla, pasar el fsck manualmente y luego seguir por donde ibas.

----------

## deovex

Gracias por la aclaración, i92guboj.

Voy a dejar 1 para todas las particiones.

Gracias.

----------

## the incredible hurd

 *i92guboj wrote:*   

> Por ejemplo emerge podría dar algún error de i/o si la partición de portage se corrompe y no puede leer un ebuild o un paquete de la misma. En ese caso tendría que desmontarla, pasar el fsck manualmente y luego seguir por donde ibas.

 

No, no, ni mucho menos.

De hecho recomiendan probar nuevos sistemas de ficheros con /usr/portage... Es la más fácil de arreglar, emerge --sync o eix-sync y asunto resuelto.

gnudov yo sólo dejaría el 1 en /boot, ninguna de las demás que tienes con ext2 es importante y son fácilmente reparables.

----------

## i92guboj

 *the incredible hurd wrote:*   

>  *i92guboj wrote:*   Por ejemplo emerge podría dar algún error de i/o si la partición de portage se corrompe y no puede leer un ebuild o un paquete de la misma. En ese caso tendría que desmontarla, pasar el fsck manualmente y luego seguir por donde ibas. 
> 
> No, no, ni mucho menos.
> 
> 

 

¿Qué cosa? :p

 *Quote:*   

> De hecho recomiendan probar nuevos sistemas de ficheros con /usr/portage... Es la más fácil de arreglar, emerge --sync o eix-sync y asunto resuelto.

 

El contenido es reemplazable fácilmente, eso nadie lo ha negado. Pero si hay corrupción en las estructuras del sistema de ficheros, eso no se arregla con un sync, sino con fsck. Un sync solo lo empeoraría porque cuando hay fallos de i/o o similares es porque algo no está bien, y seguir usando el fs tan solo lo empeora, sobre todo si escribes en él, y un emerge --sync escribiría de forma masiva.

En que los datos sean reemplazables estamos de acuerdo. Pero eso no hace a las particiones invulnerables. fsck todavía es necesario si el fs se rompe (o bien un reformateo). Que valga o no la pena eso es otra cuestión, y eso lo tendrá que decidir él.

----------

## AnFe

El fsck recupera las particiones en el sentido de dejarlas de nuevo en un estado consistente, pero eso no quiere decir que no haya datos corruptos. Yo creo que a lo que se refierethe incredible hurd es que si hay algún problema en /usr/portage, si pasas fsck y deja datos corruptos es fácil de recuperar, mientras que si te pasa en /bin y te queda algún programa importante corrupto es más "complicado" de solucionar.

Un saludo

----------

## sirope

 *i92guboj wrote:*   

> Como bien dice esculapio, fsck no se debe ejecutar en particiones montadas r/w. Por tanto lo del segundo plano es parte de la ciencia ficción por ahora, a no ser que estés hablando de particiones montadas con permiso de solo lectura.
> 
> Si es posible, teóricamente, y tan solo si tu file system lo soporta realizar algún tipo de chequeo on-line, pero eso no te ayudará cuando el fs esté roto, porque necesitarás un chequeo off-line antes de poder montarlo. En cuanto a moverlos al apagado, técnicamente no veo por qué no sería posible, pero nunca lo había pensado y no tengo ni idea del tema.

 

Con segundo plano, no me refiero a particiones montadas.. es decir, que todo lo necesario para el arranque está en la partición /.. obligatoriamente tendrá que ser chequeada antes del arranque. Lo que quiero evitar es que compruebe la partición de 100gb de archivos antes de arrancar, si la particion puede desmontarse y comprobarse luego de haber arrancado, porque no es una particion vital.

Es decir, mientras escribo este post, fsck podría desmontar y chequear /usr/portage.. aunque no podré usar portage en este momento..

saludos

----------

## the incredible hurd

 *i92guboj wrote:*   

> El contenido es reemplazable fácilmente, eso nadie lo ha negado. Pero si hay corrupción en las estructuras del sistema de ficheros, eso no se arregla con un sync, sino con fsck. Un sync solo lo empeoraría porque cuando hay fallos de i/o o similares es porque algo no está bien, y seguir usando el fs tan solo lo empeora, sobre todo si escribes en él, y un emerge --sync escribiría de forma masiva.

 

Cierto. Fue una estupidez por mi parte considerar todos los tipos de corrupción en un sistema de ficheros iguales (debo haber tenido mucha suerte), no es lo mismo un superbloque dañado irreparablemente que que un apagón deje varios ficheros sin sincronizar y por tanto incompletos o mal escritos; en este segundo caso un simple sync basta aunque fsck se seguirá quejando dado que el sistema de ficheros queda en estado "sucio".

 *sirope wrote:*   

> Con segundo plano, no me refiero a particiones montadas.. es decir, que todo lo necesario para el arranque está en la partición /.. obligatoriamente tendrá que ser chequeada antes del arranque. Lo que quiero evitar es que compruebe la partición de 100gb de archivos antes de arrancar, si la particion puede desmontarse y comprobarse luego de haber arrancado, porque no es una particion vital.

 

fsck es uno de los ejemplos más elegantes de ejecución en paralelo, comprueba todas las particiones con un 2 en <pass> (1 debe ser sólo para /) al mismo tiempo, la diferencia es considerable si se encuentran en distintos discos que no compartan IRQ y no digamos ya con distintas controladoras.

A la partición de 100Gb yo le pondría un cero (0) en pass y le pondría con tune2fs un valor -c adecuado, por ejemplo 50, cada vez que montes la partición dmesg te avisará si has superado 50 montajes y que te recomienda un fsck, syslog-ng también creo recordar que avisaba aunque no tengo discos duros externos con los que poder jugar ahora mismo para comprobarlo. Otro parámetro interesante sería -i y darle un intervalo y no combinarlos, es decir, si c == 50 entonces i == 0 y viceversa.

----------

