df
El comando df muestra el uso de espacio en disco en todos los sistemas de ficheros montados actualmente. A continuación se muestra el aspecto que podría tener la salida al ejecutar el comando df sin ningún parámetro. Si se utiliza un nombre de sistema de ficheros como argumento (por ejemplo, /dev/sda1), sólo se mostrará la información de ese sistema de ficheros:
La primera columna «Filesystem» da el nombre del almacenamiento (por ejemplo /dev/sda1) mientras que la segunda columna muestra el tamaño del sistema de ficheros en Kilobytes. De la misma manera, la tercera y cuarta columna muestran cuánto del sistema de ficheros es usado y cuánto es libre, mientras que la penúltima columna muestra el uso como un porcentaje. La última columna «Mounted on» muestra la ruta donde se montó el sistema de ficheros. Tener el tamaño del volumen, la cantidad utilizada y el espacio libre listado en Kilobytes puede hacer que la salida de df sea difícil de leer. Afortunadamente la opción «-h» cambia la salida a algo más amigable.
df -h
Además de los discos duros físicos, df también enumera otros tipos de sistemas de ficheros montados, entre los que destacan el sistema de ficheros udev para /dev y el sistema de ficheros tmpfs para /run y sus subdirectorios. Estos son sistemas de ficheros que se ejecutan en memoria y forman parte del funcionamiento interno de Linux. Por ejemplo, /run/lock es un lugar para que los procesos creen archivos de bloqueo (para asegurar un acceso ordenado a ciertos recursos), por la velocidad con la que se crean en memoria en lugar de en un disco físico. Del mismo modo, el administrador de dispositivos de Linux crea los archivos de dispositivos especiales que necesita el núcleo en el directorio /dev.
Otro par de banderas útiles para df son «-T», que añadirá una columna extra a la salida listando el tipo de cada sistema de ficheros, y «-l», que forzará a df a mostrar sólo los sistemas de ficheros locales (lo que significa que los sistemas de ficheros remotos montados vía NFS o CIFS no se mostrarán).
du
Este comando D isk U sage (du) muestra cuánto espacio de disco ocupa un directorio. Por ejemplo, para ver cuántos datos hay en el directorio «Downloads», escriba:
du Descargar archivos
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>i
La salida se verá algo así:
Para una salida más amigable utilice la opción «-h»:
du -h Descargas
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>»>>>>>>>>>>>>>>>>>>>>>>.
El comando du recorrerá recursivamente cualquier subdirectorio y mostrará la cantidad de espacio utilizado. El total mostrado para cualquier directorio dado es el espacio utilizado por el propio directorio y cualquier subdirectorio. Así que en el resultado del ejemplo anterior, el directorio de descargas/proveedores ocupa 34 Megabytes, la mayoría de los cuales se encuentra bajo el directorio de proveedores/qcom/hammerhead/propietario.
Para conocer la cantidad total de espacio en disco utilizado sin ver los detalles de los distintos subdirectorios, utilice el parámetro «-s». Usado junto con «-h», el comando tiene el siguiente aspecto:
du -hs Descargas
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.
El parámetro «-a» muestra el tamaño de cada archivo en el directorio y sus subdirectorios. Esto es útil si desea encontrar archivos grandes. La salida de du puede ser canalizada en orden para dar una lista ordenada de los archivos:
du -a Descargas/ | ordenar -n
El parámetro «-n» le dice al comando sort que considere la primera columna de números en la salida de du como una cadena numérica.
Conclusión
Los comandos df y du pueden ser muy útiles para monitorear el uso del disco y para encontrar directorios y/o archivos que ocupen grandes cantidades de espacio. Como ejercicio, vea si puede canalizar la salida de du en orden para que los directorios estén ordenados de acuerdo al uso.