Cada vez que el espacio disponible en alguno de mis sistemas de archivos se agota, o llega a un uso límite, suelo utilizar el clásico comando du -hs * junto con grep (buscando 'G', 'M' o 'K') para tratar de examinar el uso de disco en cada directorio e identificar dónde están los archivos y directorios que más consumen. Por supuesto este es un trabajo artesanal, pues es necesario ingresar en cada directorio para ejecutar este comando recursivamente hasta llegar a la raíz del problema. Hoy descubrí una gran herramienta, llamada ncdu (NCurses Disk Usage), la cual permite simplificar esta tarea.

ncdu es una versión de du basada en ncurses, la librería de interfaces gráficas en modo texto que utilizan tantos comandos en sistemas basados en Unix (como por ejemplo menuconfig, top, mc, nano, mtr, nload, atop y cientos más). Gracias a esto, provee una forma rápida para determinar qué directorios están utilizando mayor cantidad de espacio en disco.

Para instalar ncdu en Debian y derivados, simplemente ejecutar:

# apt-get install ncdu

Luego, ejecutar ncdu especificando opcionalmente una ruta a un directorio como parámetro (por defecto utiliza el directorio actual), desde donde calcular el espacio utilizado recursivamente. Por ejemplo:

# ncdu /usr

Inicialmente calcula el espacio ocupado por cada directorio. Dependiendo de la cantidad de archivos, puede demorar unos segundos. Luego organiza los directorios (a partir del directorio especificado) de acuerdo al espacio que consumen:

Esto permite identificar el problema mucho más rápidamente, pues la salida se encuentra ordenada y se utilizan numerales como ayuda visual.

Pero lo mejor de esta herramienta es que permite navegar los subdirectorios utilizando las flechas del teclado, la tecla enter, y los directorios .. para subir:

Además se pueden utilizar las teclas de dirección derecha (en lugar de enter) para ingresar a un subdirectorio, e izquierda (en lugar de acceder a ..) para volver al padre. Otros comandos útiles incluyen la tecla 'i' para obtener más información, 'r' para refrescar, 'd' para borrar (utilizar con precaución) y 'n' y 's' para ordenar por nombre y tamaño respectivamente.

Otra gran herramienta para el arsenal de todo sysadmin.


Tal vez pueda interesarte


Compartí este artículo