Estoy luchando para que logrotate funcione. Básicamente, solo quiero ejecutar un cronjob una vez por hora para rotar mis registros.
Inicialmente, esto funcionó, pero logrotate se estropeó por completo y dejó de funcionar después de solo cambiar el nombre de un archivo, siendo el maravilloso software que es...
Ahora me encuentro con errores de permisos incomprensibles cuando ejecuto logrotate --force myconfig
con compress. Si comento la compresión, el registro se rota y se crea 12345678.log-2021010608 sin errores.
No tengo idea de por qué sucede esto. Los permisos me parecen correctos y he intentado usar las opciones su
y . create
También intenté ejecutar el comando como root pero simplemente hace... nada. No se crean errores ni archivos.
error:
error: error setting owner of /home/user/test/12345678.log-2021010608.gz to uid 1000 and gid 1001: Operation not permitted
permisos:
-rw-r--r-- 1 user group 70 Jan 6 08:02 12345678.log
-rw-r--r-- 1 user group 140 Jan 6 08:00 12345678.log-2021010608
-rw------- 1 user user 0 Jan 6 08:01 12345678.log-2021010608.gz
Lograr configuración:
/home/user/test/*.log {
# su user group
hourly
dateext
dateformat -%Y%m%d%H
missingok
compress
# compressoptions -9
# create 644 user group
rotate 2
notifempty
nocreate
postrotate
sudo systemctl restart serial.service
endscript
}
Para probar, también hice chmod 777 en la carpeta y el archivo .log, pero eso no hizo ninguna diferencia.