Unidad 6.4: Gestion de espacio

df, du, logs y quotas

Author

Diego Saavedra

Published

Feb 1, 2026

Unidad 6.4: Gestion de espacio

Introduccion

En produccion, quedarse sin espacio en disco rompe servicios: bases de datos, logs, Docker, actualizaciones y backups.

En esta leccion veras un flujo simple y repetible para diagnosticar consumo de disco.

Objetivos de aprendizaje

Al final, podras:

  • Medir uso de disco con df
  • Encontrar directorios pesados con du
  • Controlar crecimiento de logs con journalctl

df: cuanto espacio queda (por FS)

BASH
1$ df -hT
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/sda1      ext4   49G  5.4G   41G  12% /
tmpfs          tmpfs  1.9G  1.2M  1.9G   1% /run
1
df -hT muestra uso por filesystem (tipo incluido).

du: donde se esta yendo el espacio

BASH
1$ sudo du -xh --max-depth=1 /var | sort -hr | head -n 10
3.2G    /var/lib
1.1G    /var/log
240M    /var/cache
1
du -xh estima uso por directorio; con sort/head ves rapidamente los mas grandes.
TipRECOMENDACION

Si el servidor usa Docker, revisa primero /var/lib/docker.

Casos de uso: - Servidores que acumulan imagenes y volumes.

Cuando aplicar: - Cuando df -h sube rapido sin cambios visibles en tu app.


Logs del systemd journal (comun en Ubuntu Server)

BASH
1$ journalctl --disk-usage
Archived and active journals take up 512.0M in the file system.


2$ sudo journalctl --vacuum-time=7d
Vacuuming done, freed 256.0M of archived journals from /var/log/journal.
1
journalctl –disk-usage mide cuanto ocupa el journal.
2
journalctl –vacuum-time=7d elimina logs antiguos (ajusta segun politica).
Warning⚠️ ADVERTENCIA CRITICA

No borres logs a ciegas en produccion.

Lo que podria salir mal: - Pierdes evidencia para auditoria/incidentes.

Como prevenirlo: 1. Define retencion (por dias o tamano) y documentala. 2. Valida con el equipo (seguridad/operaciones) antes de acortar retencion. 3. Si borras, deja evidencia (ticket/cambio).


Quotas (idea general)

Las quotas limitan cuanto puede consumir un usuario o grupo en un filesystem (muy util en servidores multi-usuario).

Ejemplo de flujo (alto nivel):

BASH
1$ sudo apt update


2$ sudo apt install -y quota
1
apt update actualiza indices de paquetes.
2
quota instala herramientas de cuotas (si decides aplicarlas).

Ejemplos practicos multi-SO

Linux

BASH
1$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        49G  5.4G   41G  12% /
1
df -h muestra espacio libre por filesystem.

macOS

BASH
1$ df -h
Filesystem      Size   Used  Avail Capacity iused ifree %iused  Mounted on
/dev/disk3s1s1  466Gi  14Gi  218Gi     6%  488k  2.1G    0%   /
1
df -h tambien existe en macOS.

Windows

POWERSHELL
1PS> Get-PSDrive -PSProvider FileSystem | Select-Object Name,Used,Free

Name Used         Free
---- ----         ----
C    135791468544 120345678901
1
Get-PSDrive entrega usados/libres por unidad.
Aspecto Linux macOS Windows
Espacio libre df -h df -h Get-PSDrive
Top directorios du -xh du -h (GUI/PowerShell)

Resumen

  • df responde “cuanto queda”.
  • du responde “quien se lo esta comiendo”.
  • Controla logs (journal) y define politicas de retencion.

Code Appendix