Es algo que últimamente he tenido que utilizar en varias ocasiones, tanto en mi trabajo, como en mi ordenador personal. Y es que, la vuelta de vacaciones no trae sólo kilos de más y la cuenta corriente con menos saldo del habitual, sino que, puede traer varios gigas de de fotos y vídeos, así como una reorganización y limpieza de tus archivos para encarar de nuevo tu trabajo con mayor productividad.

Y para ello, lo primero es detectar los directorios que más espacio ocupan, y así evaluar si seguimos necesitando esos archivos o podemos eliminarlos para conseguir espacio.

Para conseguir encontrar esas carpetas, he utilizado el comando du, que es la abreviatura de Disk Usage, y se puede utilizar tanto para conocer el tamaño que ocupa en disco los archivos como los directorios.

Como utilizar el comando du en Linux

La sintaxis es

du [opciones] [archivo/directorio]

Y las opciones más habituales que se pueden utilizar son:

  • -a: incluye la información sobre los archivos y subcarpetas que contiene el directorio dado en la entrada del comando
  • -b: muestra el tamaño en bytes
  • -c: muestra al final, el tamaño total de los archivos y carpetas que se aparecen en la salida del comando
  • -d: especifica la profundida de la búsqueda. Ejemplos: du -d 0, mostraría el directorio actual; du -d 1, incluiría los subdirectorios; du -d 2, incluiría los sub-directorios de los sub-directosios, etc…
  • -h: muestra los tamaños en formato más legible. Ejemplo: muestra G para referirse a Gigabytes.
  • -k: muestra el tamaño en bloques de 1024 bytes
  • -s: muestra sólo el total del tamaño del directorio especificado, no los elementos que lo componen
  • -x: no mostrará los archivos o directorios que pertenezcan a otro sistema de archivos

Además puedes usar:

–exclude: para excluir determinados tipos de archivos

du -bsh /home/user --exclude="*.pdf"

Por ejemplo, si lo que quieres el saber el tamaño de un archivo o directorio en concreto, tan sólo debes ejecutarlo con las opciones -sh :

du -sh /home/user

También te puede ser muy útil concatenarlo con sort -nr para que lo muestre por orden, aunque en este caso, no te recomiendo utilizarlo con la opción -h, ya que mostraría antes 100M que 10G:

du -s | sort -nr

Con todo esto, tenemos que para saber que carpeta ocupa más espacio en nuestro sistema de archivos utilizaríamos:

du -s /* | sort -nr

Mientras que para saber qué carpetas son las que más ocupan de nuestra carpeta de usuario, sólo habría que ejecutar:

du -s /home/user/* | sort -nr

Por último recordarte que si quieres conocer el tamaño de los directorios desde la raíz, deberas ejecutar el comando como root, ya que de lo contrario no podrás ver el tamaño de las carpetas en las que no tengas los permisos necesarios.