Como cualquier otro sistema operativo, GNU / Linux implementó la administración de memoria de manera eficiente e incluso mejor. Pero si un proceso está consumiendo su memoria y desea borrarlo, Linux ofrece una forma de vaciar o borrar la memoria caché de RAM.
Tabla de Contenidos
¿Cómo borro el caché en Linux?
Cada sistema Linux tiene tres opciones para borrar la caché sin interrumpir procesos o servicios.
1. Limpiar sólo PageCache.
# sync; echo 1 > /proc/sys/vm/drop_caches
2. Limpiar dentries e inodos.
# sync; echo 2 > /proc/sys/vm/drop_caches
3. Borrar caché de página, dentries e inodos.
# sync; echo 3 > /proc/sys/vm/drop_caches
Explicación del comando anterior.
sincronizar vacía el búfer del sistema de archivos. Comando separado por “;”
ejecutar uno tras otro. El shell espera a que se complete cada comando antes de ejecutar el siguiente comando de la secuencia. Como se menciona en la documentación del kernel, escriba a drop_cache borra el caché sin terminar una aplicación / servicio, el comando echo hace el trabajo de escribir en el archivo.
Cuando necesite borrar la memoria caché del disco duro, el primer comando más seguro en los negocios y la producción está ahí. “...echo 1 > ….”
borrará eso Caché de página solamente. No se recomienda utilizar la tercera opción anterior “...echo 3 >”
en producción hasta que sepa lo que está haciendo, ya que resulta Caché de página, Cena, y inodos.
¿Es una buena idea liberar búferes y caché en Linux que podrían ser utilizados por el kernel de Linux?
Búfer y caché gratuitos en Linux
Si desea realizar varias configuraciones y verificar si realmente están implementadas específicamente en el punto de referencia que es rico en E / S, es posible que deba vaciar la memoria caché del búfer. Puede borrar la caché como se describe anteriormente sin reiniciar el sistema, lo que significa que no se requiere tiempo de inactividad.
Linux está diseñado para buscar en el caché del disco duro antes de mirar el disco duro. Si el recurso se encuentra en la caché, la solicitud no llega al disco duro. Cuando limpiamos el caché, el caché del disco duro es menos útil ya que el sistema operativo busca el recurso en el disco duro.
Además, el sistema también se ralentiza durante unos segundos mientras se borra la memoria caché y todos los recursos requeridos por el sistema operativo se vuelven a cargar en la memoria caché del disco duro.
Ahora vamos a recrear un script de shell para borrar automáticamente la memoria caché de RAM todos los días. 2 a.m a través de una tarea del programador cron. Crear un script de shell clearcache.sh y agregue las siguientes líneas.
#!/bin/bash # Note, we are using "echo 3", but it is not recommended in production instead use "echo 1" echo "echo 3 > /proc/sys/vm/drop_caches"
Establecer autorización de ejecución para clearcache.sh Archivo.
# chmod 755 clearcache.sh
Ahora puede llamar al script en cualquier momento que necesite borrar la memoria caché de RAM.
Ahora configure un cron para que borre la memoria caché de RAM todos los días a las 2 a.m. Abierto crontab Para editar.
# crontab -e
Agregue, guarde y salga de la línea inferior para ejecutar 2 a.m A diario.
0 2 * * * /path/to/clearcache.sh
Para obtener más información sobre cómo coronar un trabajo, consulte nuestro artículo sobre 11 trabajos de programación cron.
¿Es una buena idea borrar automáticamente la memoria caché de RAM en el servidor de producción?
¿Borrar la memoria caché de RAM en el servidor de producción de Linux?
¡No! No lo es. Imagine una situación en la que tiene el guión programado para que cambie todos los días. borra la memoria caché de RAM 2 a.m. Todos los días a las 2 a.m., el script se ejecuta y borra la memoria caché de la RAM. Algún día, por la razón que sea, más usuarios de los esperados pueden estar en línea en su sitio web buscando recursos de su servidor.
Al mismo tiempo, se ejecuta el script programado y se borra todo el contenido de la caché. Ahora todos los usuarios están obteniendo datos del disco duro. Esto conduce a un bloqueo del servidor y a la corrupción de la base de datos. Por lo tanto, solo borre la memoria caché de memoria RAM cuando sea necesario y conozca sus pasos, de lo contrario, será un administrador del sistema Cargo Cult.
¿Cómo borro el espacio de intercambio en Linux?
Si desea borrar el espacio de intercambio, puede ejecutar el siguiente comando.
# swapoff -a && swapon -a
También puede agregar el comando anterior a un script cron anterior después de comprender todos los riesgos involucrados.
Ahora vamos a combinar los dos comandos anteriores en un solo comando para crear un script adecuado para borrar la memoria caché de RAM y el espacio de intercambio.
# echo 3 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf 'n%sn' 'Ram-cache and Swap Cleared' OR $ su -c "echo 3 >'/proc/sys/vm/drop_caches' && swapoff -a && swapon -a && printf 'n%sn' 'Ram-cache and Swap Cleared'" root
Después de haber probado los dos comandos anteriores, ejecutamos el comando «libre -h”Antes y después de ejecutar el script y comprobar la caché.
Eso es todo por ahora, si te gustó el artículo, no olvides dejarnos tus valiosos comentarios en los comentarios para hacernos saber lo que crees que es una buena idea para obtener la memoria caché RAM y el búfer. ¿Eliminar producción y empresa?
Si valora lo que hacemos aquí en TecMint, aquí hay algunas cosas a considerar:
TecMint es el sitio comunitario más confiable y de más rápido crecimiento para todo tipo de artículos, guías y libros de Linux en Internet. ¡Millones de personas visitan TecMint! para navegar o buscar en los miles de artículos publicados disponibles GRATIS para todos.
Si le gusta lo que lee, recuerde comprarnos un café (o 2) como muestra de agradecimiento.
Agradecemos su apoyo sin fin.
.