Actualizado el lunes, 7 diciembre, 2020
Mantenimiento y limpieza de un servidor linux
Los servidores a diferencia de los pc de sobremesa/domésticos, siempre están encendidos por tanto siempre están trabajando y no tienen descanso. Por este motivo, cada cierto tiempo (si es un servidor web de alto rendimiento, recomiendo cada 24h) es necesario realizar un mantenimiento preventivo y limpieza para mantener el correcto funcionamiento de los servidores lo más óptimo posible y evitar errores o situaciones que puedan dañar o enlentecer el funcionamiento de los mismos.
Por todo ello te propongo este script bash que te ayudará en la tarea, como podrás observar el mismo te ira explicando los procesos a ejecutar, es importante que no borres o modifiques los sleep (tiempo en segundos de retardo en ejecución) a no ser que quieras que se bloquee el servidor.
#libera.sh #!/bin/bash echo "<---------------------------------------------------------->" echo "<---------------------------------------------------------->" echo "Comprobando estado de memoria" free echo "OK - Comprobacion completada" echo "<---------------------------------------------------------->" sleep 2s; echo “Limpieza de memoria cache y swap“; echo "<---------------------------------------------------------->" sleep 2s; echo "Deshabilitando HTTP" killall -KILL httpd echo "OK - Http deshabilitado" echo "<---------------------------------------------------------->" sleep 5s; echo "Deshabilitando Swap" swapoff -a echo "OK - Swap deshabilitado" echo "<---------------------------------------------------------->" sleep 5s; echo "Liberando page-caches, dentries e inodes" sync;sysctl -w vm.drop_caches=3;sync echo "OK - Server liberado" echo "<---------------------------------------------------------->" sleep 2s; echo "Habilitando la Swap" swapon -a echo "OK - Swap habilitado" echo "<---------------------------------------------------------->" sleep 2s; echo "Habilitando HTTP" service httpd start echo "OK - Http habilitado" echo "<---------------------------------------------------------->" sleep 3s; echo "Mantenimiento rutinario" echo "Script liberador sh" echo "Created by Sergio G.B." echo "https://www.sololinux.es" echo "<---------------------------------------------------------->" sleep 2s; free echo ".....TODO CORRECTO....." echo "<---------------------------------------------------------->" echo "<---------------------------------------------------------->"
Si prefieres descargarlo: libera-sh
Si te interesa instalarlo directamente en tu servidor:
sudo wget https://www.sololinux.es/public/libera.sh.zip unzip libera.sh.zip # Ejecutar bash libera.sh
Úsalo con sumo cuidado y bajo tu responsabilidad.
No funciona…
Sale un error de script….
Deshabilitando HTTP
libera.sh: línea 17: killall: no se encontró la orden
SI… funciona. Necesitas instalar la librería psmisc.
Revisa este articulo, https://www.sololinux.es/no-funciona-el-comando-killall-en-linux/
Ahhhh… gracias. Ahora si, jajja.
Muchas gracias.