por que devemos usar criar e copiar juntos?

34

The Geek Stuff tem um exemplo sobre logrotate . copytruncate irá 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 questão é qual é o uso de maxage 100 ? A diretiva rotate 4 excluirá arquivos de log antigos após 4 rotação.

    
por Majid Azimi 05.03.2012 / 07:08

1 resposta

47

Isso é provavelmente um erro, ele é encontrado apenas em um exemplo desse tutorial. Todos os outros exemplos têm copytruncate sem a opção create . Também% man_de% página man declara que será realmente ignorado :

copytruncate

Truncate the original log file to zero size in place after creating a copy, instead of moving the old log file and optionally creating a new one. It can be used when some program cannot be told to close its logfile and thus might continue writing (appending) to the previous log file forever. Note that there is a very small time slice between copying the file and truncating it, so some logging data might be lost. When this option is used, the create option will have no effect, as the old log file stays in place.

Em relação a logrotate , 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ê usar maxage , o arquivo de log vazio não será girado pode ter arquivos girados antigos demais ainda em vigor.

    
por 28.05.2012 / 11:06

Tags