Conectate
Siguenos
Conectate
Siguenos

Cuando un servidor empieza a swapear, responde lento o ciertos servicios se reinician solos, uno de los primeros sospechosos es la memoria. Pero entender memoria en Linux no es tan simple como “used vs free”. En este artículo te muestro un flujo práctico para diagnosticar estos problemas sin caer en interpretaciones erróneas.
free -hfree -h
Puntos clave a observar:
ps aux --sort=-%mem | head
Interpretación:
%MEM indica qué porcentaje consume un proceso sobre el total del sistema.pmappmap -x PID | sort -k3 -n | tail
Sirve para detectar:
top o htopEn top prestá atención a:
KiB Mem → para verificar si hay crecimiento constante.RES (memoria residente): la que realmente usa el proceso.SHR: cuánto comparte con otras librerías.Si un proceso tiene RES muy alto y subiendo → posible fuga.
Linux usa la RAM libre como caché.
Por eso “memoria usada alta” no significa error.
Para ver cache y buffers:
cat /proc/meminfo | egrep "Buffers|Cached|MemAvailable"
Si Cached es muy alto pero Available también → está todo bien.
Si Available está bajo, aunque Cached esté alto → el sistema está bajo presión.
swapon -s
grep VmSwap /proc/*/status 2>/dev/null | sort -k2 -n | tail
Si un proceso usa mucha swap:
journalctl -p warning -u servicio --since "10 min ago"
Buscá:
Si aparece algo como:
kernel: Out of memory: Kill process 1234 (java) score 920
→ hubo un problema serio de memoria.
Diagnosticar consumo de memoria en Linux no es revisar “used” o “free”. Lo importante es analizar available, observar procesos que crecen de forma anormal, revisar swap y logs del sistema. Con un flujo simple como este, podés detectar rápidamente si se trata de un uso legítimo, una fuga de memoria o un proceso mal configurado.
Con práctica, este diagnóstico se vuelve automático, rápido y confiable.