O Geek Stuff tem um exemplo sobre logrotate. copytruncatecopiará e truncará o arquivo de log original.
Então por que devemos usar create? O arquivo de log original não foi removido.
/tmp/output.log {
size 1k
copytruncate
create
compress
compresscmd /bin/bzip2
compressext .bz2
rotate 4
maxage 100
}
Outra pergunta é para que serve maxage 100? A rotate 4diretiva excluirá os arquivos de log antigos após 4 rotações.
maxage 100excluirá os arquivos girados quando eles tiverem mais de 100 dias e o arquivo atual for girado; mesmo quando houver menos do que 4arquivos rotacionados.
man logrotateaté diz o seguinte: " copytruncate : [...] Quando essa opção é usada, a opção de criação não terá efeito, pois o antigo arquivo de log permanece no lugar."