Journaled Filesystems:20 |
Este capítulo continúa la noción del anterior en cuanto al chequeo de sistemas de archivos. Journaled Filesystems eliminan el requerimiento del chequeo completo del disco duro en caso de un cierre abrupto del sistema en la sesión anterior.
Linux tiene soporte (por lo menos) para:
En caso de que un chequeo del disco al iniciar - sea provocado o programado - detecta fallas en el sistema de archivos, se intenta realizar una corrección, sin embargo muchas veces los cambios a realizar no pueden realizarse automáticamente, especialmente si no hay información redundante para realizar la reparación, o si la reparación involucra cambiar el contenido de un archivo o directorio. Supongamonos la situación, cuando la usuaria está borrando un archivo, y en este momento falla la energía. Posiblemente ya están registrados los bloques en la lista de bloques libres, pero todavía existe una entrada en el directorio. El sistema no se atreve a decidir por propia voluntad, si el archivo ha sido creado y los bloques libres todavía no se han de-registrados, o si la situación fue la inversa.
En este momento se interrumpe el chequeo del disco, y se le pide a la usuaria efectuar un chequeo manual, de la partición en cuestión. Esta operación requiere autorización de superuser, y obviamente también sus conocimientos...
Un Journaled Filesystem convierte los accesos al disco duro en "transacciones", un concepto heredado de los bases de datos. En una especie de "block de notas" - el Journal - se registran primero las modificaciones a realizar en el sistema de archivo, después se ejecutan punto por punto, y al terminar de ejecutar un paso, se marca terminado en el journal.
De esta manera, se puede garantizar un estado consistente - o ante Journal - o después Journal. En caso de una falla de energía, durante el proceso de arranque se ejecuta los pasos no terminados en el Journal, o se revocan los pasos ya efectuados. para llegar a uno u otro de los dos estados.
El tamaño del Journal determina la cantidad de transacciones que pueden estar pendientes, y por lo tanto la velocidad de acceso para cargas altas del sistema. Más grande el Journal, más rápido el acceso al disco duro. Por otro lado, en caso de falla, el tiempo del replay - la recuperación de un estado consistente mediante el Journal - es proporcional al tamaño del Journal.
Los discos de hoy - 120 GByte y creciendo - toman hasta 20 minutos para un chequeo completo. Un Journal de 20 o MByte provee un buen rendimiento y solo toma algunos segundos para el replay.
Así no solamente se reduce la intervención humana en la computadora, sino también se mejora la disponibilidad o reduce el "down-time" respectivamente.
Journaled Filesystems:20 |