• Saltar al contenido principal
  • Skip to secondary menu
  • Saltar a la barra lateral principal
  • Saltar al pie de página
  • Inicio
  • Secciones
    • Ciencia de datos
    • Criptografía
    • Herramientas
    • Machine Learning
    • Noticias
    • Opinión
    • Productividad
    • Programación
      • JavaScript
      • Julia
      • Matlab
      • Python
      • R
  • Programación
    • JavaScript
    • Julia
    • Matlab
    • Python
    • R
  • Laboratorio
    • Encuestas: Tamaño de Muestra
    • Lotería: Probabilidad de Ganar
    • Reparto de Escaños (D’Hondt)
    • Tres en Raya con IA
  • Noticias
  • Boletín
  • Contacto
  • Tienda
    • Libros
    • Equipamiento de oficina
    • Equipamiento en movilidad
    • Tiendas afiliadas
      • AliExpress
      • Amazon
      • Banggood
      • GeekBuying
      • Lenovo

Analytics Lane

Ciencia e ingeniería de datos aplicada

  • Ciencia de datos
  • Machine Learning
  • IA Generativa
  • Python
  • Pandas
  • NumPy
  • Excel
  • Matlab

Como analizar el espacio en disco en Linux con el comando du

junio 4, 2025 Por Daniel Rodríguez Deja un comentario
Tiempo de lectura: 5 minutos

El espacio en disco es uno de los recursos más críticos en cualquier sistema. Ya sea que administres servidores en producción, sistemas de escritorio o entornos de desarrollo, conocer cuánta información está almacenada en cada directorio te ayudará a anticiparte a los problemas causados por un espacio insuficiente, a mantener el sistema en un nivel de rendimiento óptimo y a tener un control más preciso sobre los archivos y carpetas que ocupan más espacio.

En esta entrada se mostrará como analizar el espacio en disco en Linux con du (disk usage), explicando su uso en profundidad: desde el uso básico hasta combinaciones avanzadas con herramientas como sort, head, y grep. También exploraremos algunos escenarios comunes, buenas prácticas y cómo automatizar algunas de estas tareas.

Tabla de contenidos

  • 1 ¿Qué es el comando du?
  • 2 Ver el tamaño de carpetas a primer nivel
    • 2.1 Ejemplo práctico
  • 3 Ver carpetas hasta el segundo nivel
    • 3.1 Ejemplo con /var
  • 4 Ordenar las carpetas por tamaño
  • 5 Ver tamaños exactos en KB o MB
  • 6 Excluir carpetas o archivos del análisis
  • 7 Ignorar errores de acceso
  • 8 Automatizar el análisis con cron y scripts
  • 9 Resumen de comandos
  • 10 Conclusiones

¿Qué es el comando du?

El comando du (disk usage) está diseñado para estimar y mostrar el uso del espacio en disco, tanto de archivos como de directorios. Forma parte del conjunto de herramientas básicas incluidas en casi todas las distribuciones GNU/Linux y sistemas UNIX, por lo que no es necesario instalar ningún paquete adicional para utilizarlo. Su formato básico es el siguiente:

du [opciones] [ruta]

Si lo ejecutas sin opciones y sin indicar una ruta, el comando calculará recursivamente el tamaño de todos los subdirectorios en la ubicación actual, lo que probablemente genere una salida extremadamente extensa y difícil de manejar.

Curiosidad: La Ley de Twyman y la trampa de los datos “interesantes”
En Analytics Lane
Curiosidad: La Ley de Twyman y la trampa de los datos “interesantes”

Para entenderlo mejor, conviene revisar sus opciones más útiles y cómo limitar su comportamiento antes de usar el comando.

Publicidad


Ver el tamaño de carpetas a primer nivel

Una de las primeras tareas que se pueden realizar con el comando du es verificar cuánto espacio ocupa una carpeta específica. Para ello, no siempre es necesario mostrar el detalle completo de todos los subdirectorios anidados.

Podemos limitar la profundidad con la opción --max-depth. Si se indica un valor de 1, solamente se mostrará el tamaño de la ruta especificada y sus subdirectorios directos. Por ejemplo, para conocer cuánto espacio ocupa cada carpeta dentro de una ruta dada, se puede usar el siguiente comando:

du -h --max-depth=1 /ruta/al/directorio

En este caso se han indicado dos opciones:

  • -h o --human-readable: Presenta los tamaños en formato comprensible como K (kilobytes), M (megabytes), G (gigabytes). Si se omite, los tamaños se mostrarán en bloques, lo que puede resultar poco intuitivo.
  • --max-depth=1: Limita la recursividad a un nivel por debajo de la ruta especificada.

Ejemplo práctico

Así, para saber cuánto espacio ocupa la carpeta de un usuario, solo se debe ejecutar el siguiente comando:

du -h --max-depth=1 /home/usuario

Este comando generará una lista con el tamaño total de cada subcarpeta dentro de `/home/usuario, lo que resulta ideal para tener una visión general del uso del espacio sin entrar en demasiados detalles.

Publicidad


Ver carpetas hasta el segundo nivel

En algunos casos puede interesarte un análisis un poco más profundo, por ejemplo, para ver carpetas y subcarpetas sin llegar al fondo completo de la jerarquía. Para ello, basta con aumentar la profundidad a dos niveles:

du -h --max-depth=2 /ruta/al/directorio

La principal ventaja de este enfoque es que permite identificar cuáles son las subcarpetas que más espacio ocupan dentro de otras, obteniendo al mismo tiempo una vista jerárquica más completa sin sobrecargar la salida.

Ejemplo con /var

Para saber cuánto ocupan las diferentes carpetas dentro, por ejemplo, de `/var, puedes utilizar el siguiente comando:

du -h --max-depth=2 /var

Esto permite ver no solo el tamaño total de /var/log, sino también los componentes más pesados dentro de ese directorio. Una posible salida de este comando sería algo como lo siguiente:

300M    /var/log/journal
150M    /var/log/apache2
500M    /var/log
100M    /var/cache/apt
600M    /var/cache
2.0G    /var

Publicidad


Ordenar las carpetas por tamaño

Cuando tienes muchos directorios, es útil ordenarlos para detectar rápidamente cuáles consumen más espacio. Para ello, puedes combinar du con sort:

du -h --max-depth=1 /ruta | sort -hr

En este caso, la salida del comando du se redirige al comando sort, al cual se le indican dos opciones:

  • -h: Usa un orden “humano” o natural, respetando el formato de tamaños como K, M, G.
  • -r: Invierte el orden para mostrar primero las carpetas que más espacio ocupan.

Si solo te interesa conocer, por ejemplo, las cinco carpetas que más espacio ocupan se puede limitar la salida con head:

du -h --max-depth=1 /ruta | sort -hr | head -n 5

Esto comando es particularmente útil cuando se necesita liberar espacio rápidamente y hay que decidir por dónde empezar.

Ver tamaños exactos en KB o MB

En algunos contextos, especialmente cuando se generan reportes o se usan scripts automatizados, es preferible tener tamaños en unidades fijas. Para ello se puede reemplazar la opción -h por -k para usar kilobytes o -m para usar megabytes. Por ejemplo, en megabytes el comando seria:

du -m --max-depth=1 /ruta/al/directorio

Estos valores son ideales para almacenar en archivos CSV o alimentar scripts que dependan de valores numéricos sin sufijos.

Publicidad


Excluir carpetas o archivos del análisis

Si quieres omitir ciertos archivos o directorios durante el escaneo, puedes usar la opción --exclude:

du -h --max-depth=1 --exclude=tmp /ruta/al/directorio

Incluso puedes usar comodines:

du -h --max-depth=2 --exclude='*.log' /var

Esto excluye todos los archivos .log al hacer los cálculos. Una opción ideal si estás analizando directorios que acumulan archivos temporales o de registro que no necesitas considerar.

Ignorar errores de acceso

Si en la ruta hay carpetas a las que no se tiene permiso de acceso, los mensajes de error pueden saturar la salida. Para evitar esto, puedes redirigir los errores estándar (stderr) a /dev/null usando `2>/dev/null. El comando quedaría así:

du -h --max-depth=1 /ruta/al/directorio 2>/dev/null

Esto es especialmente útil en sistemas con múltiples usuarios o donde algunos directorios están protegidos por permisos más restrictivos. Así, puedes centrarte solo en los datos relevantes sin distracciones por errores de acceso.

Publicidad


Automatizar el análisis con cron y scripts

Puedes usar scripts que ejecuten du y guarden los resultados periódicamente. Por ejemplo, para ver cómo evoluciona el espacio usado por un usuario con el tiempo se puede crear un script como el siguiente:

#!/bin/bash
fecha=$(date +%Y-%m-%d)
du -h --max-depth=1 /home/usuario | sort -hr > /home/usuario/uso_disco_$fecha.txt

Guarda esto como reporte_disco.sh y dale permisos:

chmod +x reporte_disco.sh

Agrégalo al crontab:

crontab -e

Y añade:

0 1 * * * /home/usuario/reporte_disco.sh

Esto generará un informe cada noche a la 1 a.m.

Resumen de comandos

En resumen, la tabla siguiente presenta un compendio de todos los comandos analizados en la entrada.

ObjetivoComando
Ver uso a primer niveldu -h --max-depth=1 /ruta
Ver uso a segundo niveldu -h --max-depth=2 /ruta
Ordenar por tamañodu -h --max-depth=1 /ruta | sort -hr
Ver las 5 carpetas más grandesdu -h --max-depth=1 /ruta | sort -hr | head -n 5
Ver en MB o KB exactosdu -m --max-depth=1 o du -k --max-depth=1
Excluir archivos o carpetasdu -h --exclude=tmp /ruta
Ocultar errores de permisosdu -h /ruta 2>/dev/null

Publicidad


Conclusiones

El comando du es mucho más que una simple herramienta de consola: es un aliado indispensable para quienes quieren o necesitan mantener bajo control el uso del disco en sistemas Linux. Su flexibilidad, combinada con herramientas como sort, head y ncdu, lo convierte en una solución ideal tanto para revisiones puntuales como para análisis regulares y automatizados.

Ya sea que estés limpiando tu portátil personal o administrando servidores empresariales, dominar de este comando te permitirá optimizar el almacenamiento, prevenir errores y trabajar con mayor seguridad.

Recuerda revisar periódicamente el uso del disco, automatizar reportes y tomar medidas antes de que surjan los problemas. Con las herramientas correctas, mantener tu sistema limpio y ordenado es más fácil de lo que parece.

Nota: La imagen de este artículo fue generada utilizando un modelo de inteligencia artificial.

¿Te ha parecido de utilidad el contenido?

¡Puntúalo entre una y cinco estrellas!

Puntuación promedio 0 / 5. Votos emitidos: 0

Ya que has encontrado útil este contenido...

¡Síguenos en redes sociales!

¡Siento que este contenido no te haya sido útil!

¡Déjame mejorar este contenido!

Dime, ¿cómo puedo mejorar este contenido?

Publicaciones relacionadas

  • Curiosidad: La Ley de Twyman y la trampa de los datos “interesantes”
  • Copias de seguridad automáticas en SQL Server con rotación de archivos
  • Curiosidad: La Paradoja de Simpson, o por qué no siempre debes fiarte de los promedios
  • Error npm ERR! code EACCES al instalar paquetes en Node.js: Cómo solucionarlo paso a paso
  • Curiosidad: La maldición de la dimensionalidad, o por qué añadir más datos puede empeorar tu modelo
  • ¿Está concentrado el MSCI World? Un análisis con Gini, Lorenz y leyes de potencia
  • Curiosidad: ¿Por qué usamos p < 0.05? Un umbral que cambió la historia de la ciencia
  • Programador de tareas de Windows: Guía definitiva para automatizar tu trabajo (BAT, PowerShell y Python)
  • La Paradoja del Cumpleaños, o por qué no es tan raro compartir fecha de nacimiento

Publicado en: Herramientas Etiquetado como: Linux

Interacciones con los lectores

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

I accept the Terms and Conditions and the Privacy Policy

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Barra lateral principal

Suscríbete a nuestro boletín

Suscríbete al boletín semanal para estar al día de todas las publicaciones.

Política de Privacidad

Analytics Lane en redes sociales

  • Amazon
  • Bluesky
  • Facebook
  • GitHub
  • Instagram
  • Mastodon
  • Pinterest
  • RSS
  • Telegram
  • Tumblr
  • Twitter
  • YouTube

Publicidad

Entradas recientes

La Paradoja del Cumpleaños, o por qué no es tan raro compartir fecha de nacimiento

octubre 9, 2025 Por Daniel Rodríguez

Programador de tareas de Windows: Guía definitiva para automatizar tu trabajo (BAT, PowerShell y Python)

octubre 7, 2025 Por Daniel Rodríguez

Curiosidad: ¿Por qué usamos p < 0.05? Un umbral que cambió la historia de la ciencia

octubre 2, 2025 Por Daniel Rodríguez

Publicidad

Es tendencia

  • Gráficos de barras en Matplotlib publicado el julio 5, 2022 | en Python
  • Cómo calcular el tamaño de la muestra para encuestas publicado el septiembre 9, 2025 | en Ciencia de datos
  • Truco: Validar palabras con acentos mediante expresiones regulares publicado el mayo 12, 2021 | en JavaScript
  • Los mejores conjuntos de datos para Machine Learning publicado el septiembre 11, 2024 | en Ciencia de datos, Reseñas
  • Cómo solucionar problemas de red en VirtualBox: Guía completa publicado el junio 11, 2025 | en Herramientas

Publicidad

Lo mejor valorado

4.9 (24)

Seleccionar filas y columnas en Pandas con iloc y loc

4.6 (16)

Archivos JSON con Python: lectura y escritura

4.4 (14)

Ordenación de diccionarios en Python mediante clave o valor

4.7 (13)

Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas

4.5 (10)

Diferencias entre var y let en JavaScript

Publicidad

Comentarios recientes

  • Daniel Rodríguez en Probabilidad básica: cómo entender el azar en nuestra vida diaria
  • Pepe en Probabilidad básica: cómo entender el azar en nuestra vida diaria
  • CARLOS ARETURO BELLO CACERES en Justicio: La herramienta gratuita de IA para consultas legales
  • Piera en Ecuaciones multilínea en Markdown
  • Daniel Rodríguez en Tutorial de Mypy para Principiantes

Publicidad


Footer

Analytics Lane

  • Acerca de Analytics Lane
  • Boletín de noticias
  • Contacto
  • Libros
  • Lo más popular
  • Noticias
  • Tienda
  • Tiendas afiliadas

Secciones

  • Ciencia de datos
  • Criptografía
  • Herramientas
  • Machine Learning
  • Opinión
  • Productividad
  • Programación
  • Reseñas

Sobre de Analytics Lane

En Analytics Lane tratamos de explicar los principales conceptos de la ciencia e ingeniería de datos con un enfoque práctico. Los principales temas tratados son ciencia de datos, ingeniería de datos, inteligencia artificial, machine learning, deep learning y criptografía. Además, también se habla de los principales lenguajes de programación y herramientas utilizadas por los científicos e ingenieros de datos.

Copyright © 2018-2025 Analytics Lane ·Términos y condiciones ·Política de Cookies ·Política de Privacidad ·Herramientas de privacidad ·Contacto