Estou lutando para fazer o logrotate funcionar. Basicamente, eu só quero que um cronjob seja executado uma vez por hora para girar meus logs.
Agora eu tinha isso funcionando inicialmente, mas o logrotate se estragou completamente e parou de funcionar depois de apenas alterar o nome do arquivo, sendo o software maravilhoso que é ...
Agora estou enfrentando erros de permissão incompreensíveis ao executar logrotate --force myconfig
com compactação. Se eu comentar a compactação, o log será girado e 12345678.log-2021010608 será criado sem erros.
Não tenho ideia de por que isso está acontecendo. As permissões parecem boas para mim e tentei usar as opções su
e . create
Eu também tentei executar o comando como root, mas ele simplesmente não fez nada. Nenhum erro ou arquivo é criado.
erro:
error: error setting owner of /home/user/test/12345678.log-2021010608.gz to uid 1000 and gid 1001: Operation not permitted
permissões:
-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
Logrotate conf:
/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 testar também fiz chmod 777 na pasta e no arquivo .log, mas isso não fez diferença.