Skip to main content

Liberar memoria ram en servidor CentOS

Alejo Sotelo - Developer
Publicado el 20 Diciembre 2022 - Modificado el 28 Abril 2026

Liberar memoria ram en servidor CentOS

Cómo liberar memoria RAM en un servidor CentOS

La memoria RAM es uno de los recursos más críticos en cualquier servidor Linux. Con el tiempo, procesos como Apache, Nginx, PHP-FPM, MySQL o MariaDB acumulan datos en caché que el sistema operativo retiene en memoria para acelerar futuras solicitudes. Si bien esto es un comportamiento normal y deseable del kernel de Linux, en servidores con recursos limitados —como un VPS con 1 o 2 GB de RAM— puede derivar en problemas de rendimiento, lentitud generalizada o incluso caídas del servicio.

En este tutorial, te explicaré cómo liberar memoria RAM en un servidor CentOS utilizando comandos simples desde una sesión SSH. Sigue estos pasos para optimizar el rendimiento de tu servidor.

¿Cuándo es necesario liberar la memoria RAM en CentOS?

No siempre es necesario liberar la RAM manualmente. El kernel de Linux administra la memoria de forma inteligente y, en condiciones normales, reutiliza el caché cuando algún proceso lo necesita. Sin embargo, hay situaciones en las que una liberación manual es conveniente:

  • El servidor responde con lentitud inusual aunque no haya picos de tráfico evidentes.
  • Aparecen errores 500 o timeouts en sitios web o aplicaciones alojadas en el servidor.
  • El uso de swap está elevado, lo que indica que el sistema está recurriendo al disco porque la RAM está saturada.
  • Acabás de detener un proceso pesado (como una migración de base de datos o un proceso batch) y querés recuperar recursos rápidamente.
  • Estás realizando pruebas de rendimiento y necesitás un punto de partida limpio para medir el consumo real.

En todos estos escenarios, liberar la caché de memoria en CentOS puede ser una solución rápida y efectiva para recuperar disponibilidad de RAM sin necesidad de reiniciar el servidor.

¿Por qué se acumula tanta memoria en un servidor CentOS?

Linux, por diseño, utiliza la RAM disponible para almacenar en caché datos de disco frecuentemente accedidos. Esto incluye archivos de configuración, páginas de sitios web, resultados de consultas a bases de datos y recursos estáticos. Este comportamiento mejora notablemente el rendimiento general del sistema, pero puede generar confusión cuando se observa que casi toda la RAM aparece como "usada" en herramientas de monitoreo.

Los principales generadores de caché en un servidor web típico con CentOS son:

  • El propio kernel de Linux, que guarda en pagecache los archivos leídos recientemente desde disco.
  • MySQL o MariaDB, que mantienen en memoria los resultados de consultas y los índices de las tablas más accedidas.
  • PHP-FPM y sus workers, que pueden acumular memoria si los procesos no se reciclan correctamente.
  • Apache o Nginx, que almacenan conexiones abiertas y contenido servido recientemente.

Entender por qué se llena la RAM ayuda a tomar decisiones más informadas: en muchos casos, liberar la caché es una solución temporal y conviene revisar la configuración de los servicios para evitar que el problema se repita con frecuencia.

Paso a paso para liberar memoria RAM

  1. Conéctate al servidor vía SSH

    Accede a tu servidor CentOS mediante un cliente SSH, como PuTTY.

  2. Ejecuta los comandos para liberar la RAM

    Introduce los siguientes comandos en el terminal para liberar memoria RAM:

    free -m sudo sync && sudo sysctl -w vm.drop_caches=3 free -m

    Explicación de los comandos:

    • free -m: Muestra el estado actual de la memoria RAM en megabytes.
    • sudo sync && sudo sysctl -w vm.drop_caches=3: Libera memoria RAM. El valor vm.drop_caches=3 es el más agresivo.
    • free -m: Verifica cuánta memoria se ha liberado.

Valores de vm.drop_caches

El parámetro vm.drop_caches puede configurarse con diferentes valores dependiendo de lo que quieras liberar:

Valor Acción
1 Libera la pagecache.
2 Libera inodos y dentries.
3 Libera inodos, pagecache y dentries.

Para la mayoría de los casos en producción, usar el valor 1 (solo pagecache) es suficiente y menos invasivo. El valor 3 es más agresivo y libera todo el caché del sistema, lo que puede generar un pico de carga momentáneo mientras el servidor vuelve a construir su caché desde cero.

Precauciones antes de liberar RAM en un servidor en producción

Aunque liberar la memoria RAM en CentOS es un proceso seguro y no destructivo —no se pierde ningún dato—, es recomendable tener en cuenta algunas consideraciones antes de ejecutarlo en un servidor que está atendiendo usuarios en tiempo real:

  • Elegí un horario de bajo tráfico. Al liberar el caché, el servidor deberá reconstruirlo leyendo datos nuevamente desde el disco, lo que puede provocar una ralentización momentánea. Realizarlo durante la madrugada o en un período de bajo uso minimiza el impacto.
  • Verificá el uso de swap antes y después. Si el swap se mantiene alto incluso después de liberar la caché, el problema puede ser otro: un proceso con pérdida de memoria (memory leak) o una configuración subdimensionada para la carga actual.
  • No automatices la liberación sin monitoreo. Ejecutar este proceso de forma periódica sin entender la causa del consumo puede enmascarar problemas más profundos de configuración.
  • Considerá revisar la configuración de servicios. Si la RAM se llena constantemente, puede ser necesario ajustar los límites de memoria de MySQL, los workers de PHP-FPM o el número de procesos de Apache/Nginx según los recursos reales del servidor.

Resultado

Al ejecutar los comandos, deberías ver algo similar a lo siguiente:

Liberar memoria RAM en CentOS

Como puedes observar, la memoria libre aumenta después de ejecutar los comandos.

Conclusión

Liberar la memoria RAM en un servidor CentOS es una tarea de administración habitual que todo sysadmin o desarrollador que gestiona su propio VPS debería conocer. El proceso es rápido, seguro y no requiere reiniciar el servidor ni interrumpir los servicios en ejecución. Con una conexión SSH y los comandos correctos, es posible recuperar varios cientos de megabytes de RAM en segundos.

Dicho esto, la liberación manual de caché es una solución puntual. Para un rendimiento sostenido a largo plazo, lo ideal es combinarla con una revisión periódica de la configuración de los servicios, el monitoreo continuo del consumo de recursos y, si corresponde, una actualización del plan de hosting o la ampliación de la RAM disponible en el servidor.

¿Necesitás ayuda con tu servidor?

Si gestionás sitios web en Joomla, PrestaShop u otras plataformas sobre servidores CentOS y necesitás asistencia profesional en la administración y optimización de tu infraestructura, puedo ayudarte a diagnosticar cuellos de botella, ajustar la configuración de servicios y mantener tu servidor funcionando de forma estable.

Contactame

Más artículos de Alejo A Sotelo - Desarrollo Web

12 Mayo 2026
Si trabajás en Linux, Mac o WSL (Windows Subsystem for Linux) y necesitás comprimir o descomprimir archivos desde la terminal, esta guía te va a salvar más de una vez. Cada formato tiene su propio comando, y es fácil confundirse…
07 Mayo 2026
Cuando migrás una tienda a Tiendanube, el trabajo no termina con pasar los productos. Quedan cientos de URLs viejas indexadas en Google que ahora dan 404, y cada una de esas páginas perdidas es autoridad SEO que se evapora. En mi…
28 Abril 2026
Desarrollé SA MCP Server, un componente open source para Joomla 3 y 4 que implementa el protocolo MCP (Model Context Protocol) y permite que asistentes de inteligencia artificial como Claude gestionen el contenido de tu sitio dir…
23 Abril 2026
Hace poco recibí el contacto de una persona cuyo sitio web en Joomla no es gestionado por mi equipo. Me contactó con urgencia: su página estaba funcionando mal, aparecían archivos extraños y temía que los datos de sus clientes es…