Logrotate, rotando los logs.
Los logs o ficheros de registro están pensados para guardar la información de las actividades del sistema. Estos ficheros pueden crecer hasta llenar la partición donde se encuentran y bloquear el sistema, pero tienen muchísimos usos y son algo imprescindible, ya que con la experiencia nos aportan una inmensa cantidad de información.
Hoy vamos a ver una herramienta llamada logrotate, encargada de rotar estos ficheros y más características interesantes para poderlos gestionar con facilidad y tener un control casi completo sobre ellos. Es importante conservar durante un tiempo bastante largo esta información, de ahí que «rotemos» los logs, ya que cada cierto tiempo o condiciones, se creará un fichero sobre el que se escribirá y el que teníamos pasará a ser un histórico.
Sus datos nos proporcionan desde estadísticas, para a poder afinar el sistema, hasta información de seguridad, como accesos no permitidos o lo que se ha hecho cuando se ha accedido ya que mucha gente puede saber como acceder a un sistema leyendo un par de manuales en internet, pero lo verdaderamente difícil es burlar estas pruebas para que no dejar huella, pues un buen administrador de sistemas hace siempre un buen uso de estos ficheros y los suele monitorizar para buscar fallos en sus sistema de cualquier tipo, tanto de configuración, como de accesos, rendimiento y una larga lista más…
La ruta por defecto donde están los logs es /var/log que en muchos sistemas se suele montar en un partición separada para que al llenarse, aunque no se puedan registrar mas logs el sistema siga funcionando. En esa misma ruta los ficheros rotados tendrán una nomenclatura como :
secure
secure.1
secure.2
En donde el primero que no tiene número es sobre el que estamos escribiendo actualmente, el siguiente secure.1 es el anterior, y el secure.2 es el anterior a secure.1 con lo que lo leemos del más reciente al más viejo. Es importante saber que nunca se deben editar con editores de texto como vi, nano, gedit y demás, podemos cometer algún fallo y borrar información, siempre con herramientas para visualizarlo sin escritura, los más comunes son tail y less.
El fichero de configuración principal es /etc/logrotate.conf
cat /etc/logrotate.conf
De las entradas que nos salen tenemos estas:
weekly -> Por defecto se rotará cada semana, otras opciones son daily y monthly.
rotate 4 -> Cuanto tiempo se conservan los antiguos, por defecto son cuatro semanas, algunos ficheros pueden ser muy importantes y que los conservemos todos.
create -> Para que se cree un fichero al rotar, en donde se guardará la información otra vez.
La configuración de este fichero es una principal, y luego como vemos tiene un include al fichero /etc/logrotate.d
root@localhost# ls /etc/logrotate.d/
acpid mgetty samba tux conman named sa-update vsftpd.log cups ppp snmpd wpa_supplicant httpd psacct squid yum kdm rpm syslog
En donde se encuentran más configuraciones específicas de servicios, es decir si por ejemplo para cups pone monthly y en el logrotate.conf es weekly, siempre se tomará en cuenta lo específico del servicio, de esa forma al ser modular tiene una configuración sencilla pero muy buena. Es importante saber que en esta ruta se ejecuta todo con lo que hay que tener cuidado de lo que dejamos aqui.
Otras opciones interesantes para poner son:
Compress -> Hace que logrotate comprima los ficheros de registro para ahorrar espacio,
size -> Los ruta cuando el tamaño máximo de un fichero sea la cantidad que se ponga, en formato size 4096k , size 256M.
prerotate/postrotate -> antes o después de rotar, puede hacer alguna acción como ejecutar un script o unos comandos.
Al rotar los logs los iria renombrando añadiendo números.
De momento esto es todo, espero que os haya gustado esta magnífica herramienta imprescindible para un administrador Linux.
Deja un comentario