Hoy vamos a tirar abajo un mito… ¡NUESTRO LINUX DEBE SER DESFRAGMENTADO!
Muchos creen (creemos) que nuestros GNU/Linux no deben ser desfragmentados como sucede con otros sistemas operativos. Esto se debe al eficiente manejo del denominado «registro de diario» (journaling), en el que se almacena la información necesaria para restablecer los datos afectados por la transacción en caso de que ésta falle. Mas información en este link de Wikipedia.
Sistemas de archivos como EXT2, 3 y 4, JFS, ZFS, XFS, ReiserFS y BTRFS cuentan con métodos inteligentes en la asignación de archivos en los discos, minimizando el problema de fragmentación al punto tal de que prácticamente no hay razón alguna para desfragmentar, incluso después de muchos años de instalación y desinstalación de aplicaciones en el sistema.
A muy grandes rasgos, el sistema de asignación en GNU/Linux, almacena los archivos en varios lugares del disco, dejando gran espacio no escrito entre ellos, lo que les permite crecer sin obstáculos si es necesario a través del tiempo. En cambio, en los sistemas de archivos NTFS como los que utiliza Windows, los archivos son almacenados uno junto al otro en forma consecutiva. En la medida que el disco se va llenando y un archivo necesita mas espacio para crecer, el sistema de archivos de GNU/Linux intentará reescribir completamente el archivo en otra ubicación del disco que tenga espacio suficiente para almacenarlo en una sola pieza. De esta manera, todo permanece ordenado y limpio. Sin embargo, este tipo de maniobras para conseguir espacio disponible y contiguo se hace mas difícil con el tiempo, y es aquí donde hemos de actuar desfragmentando.
Existen varias herramientas para llevar adelante nuestro objetivo, pero hoy vamos a concentrarnos en e4defrag, ya que es muy probable que ya esté en nuestro sistema.
¿Como hacerlo?
Vamos a iniciar nuestro DEBIAN GNU/Linux y, como super usuario root, vamos a verificar si efectivamente nuestro sistema necesita ser desfragmentado
Lo que le estamos diciendo a e4defrag es que compruebe nuestra partición del sistema, y observamos como resultado que el mismo no necesita ser desfragmentado.
Tranquilamente podrían pensar que es lógico ya que prácticamente no tiene uso ya que lo utilizamos para este blog… (yo lo pensaría)
Para ello, les muestro la salida del comando en mi sistema:
Mi sistema fue instalado en agosto de 2014 y tiene realmente bastante uso.
Ahora bien, como han de observar, al finalizar el comando nos da un «Fragmentation score», y en base a ese valor es que hemos de decidir si corresponde o no proceder con la desfragmentación. En ambos ejemplos, el resultado ha sido 0 por lo que no es necesario el proceso.
En caso de tener que ejecutarlo, el procedimiento sería correr el comando con la ruta del archivo/disco/partición deseada, por ejemplo…
Lo que significa que hemos desfragmentado satisfactoriamente el archivo /usr/lib/locale/locale-archive
Si vuelven a ejecutar la comprobación verán que el resultado es el mismo, esto se debe a que el sistema de archivos, por lo arriba mencionado optimiza el proceso de almacenamiento por lo que lograr que se fragmente es algo, cuando menos, raro.
Espero que les sea útil este tutorial y como siempre les pido… no dejen de compartirlo!
Hasta la próxima, buen fin de semana!
Eduardo