O Geek Stuff tem um exemplo sobre logrotate
. copytruncate
copiará 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 4
diretiva excluirá os arquivos de log antigos após 4 rotações.
man logrotate
até 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."maxage 100
excluirá os arquivos girados quando eles tiverem mais de 100 dias e o arquivo atual for girado; mesmo quando houver menos do que4
arquivos rotacionados.Respostas:
Provavelmente é um erro, é encontrado apenas em um exemplo nesse tutorial. Todos os outros exemplos têm
copytruncate
sem acreate
opção Também alogrotate
página de manual afirma que será realmente ignorado :Em relação a isso
maxage
, acho que pode ser útil, por exemplo, para arquivos de log que podem ficar vazios por alguns períodos de rotação (dias / semanas / meses) - se você usarnotifempty
, o arquivo de log vazio não será girado, para que você possa ter arquivos girados muito antigos ainda no lugar .fonte