Segui este link para alterar o registro -rotate configuration for RHEL 6
Depois de fazer a alteração no arquivo de configuração, o que devo fazer para que isso tenha efeito?
Resposta
logrotate
usa crontab
para funcionar. É um trabalho agendado, não um daemon, portanto, não há necessidade de recarregar sua configuração.
Quando o crontab
executa logrotate
, ele usará seu novo arquivo de configuração automaticamente.
Se precisar testar sua configuração, você também pode executar logrotate
por conta própria com o comando:
logrotate /etc/logrotate.d/your-logrotate-config
Ou conforme mencionado nos comentários, identifique a linha consulte a resposta do slm “ para obter uma explicação cron.daily precisa logrotate
na saída do comando crontab -l
e execute a linha de comando
Comentários
Resposta
A maior parte do logrotate
configurações que eu vi em várias distros executadas fora do /etc/cron.daily
. Há um script de shell apropriadamente chamado de logrotate
.
Exemplo
$ ls -l /etc/cron.daily/logrotate -rwxr-xr-x 1 root root 180 May 18 2011 /etc/cron.daily/logrotate
Execução manual
Se você deseja que seja executado manualmente, basta executar o script como root:
$ sudo /etc/cron.daily/logrotate
Se você der uma olhada em um script que normalmente está lá, ele mostra como você também pode executar logrotate
manualmente, simplesmente executando logrotate
+ o caminho para seu arquivo de configuração.
#!/bin/sh /usr/sbin/logrotate /etc/logrotate.conf EXITVALUE=$? if [ $EXITVALUE != 0 ]; then /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]" fi exit 0
Resposta
Deve ser automático via cron. Você pode forçá-lo para testar suas alterações.
Para logrotate global:
sudo logrotate -v -f /etc/logrotate.conf
Para um único arquivo conf:
sudo logrotate -v -f /etc/logrotate.d/someapp.conf
Comentários
-
-f
para rotação forçada, também há-d
para depuração, que também é executado a seco, ele imprimirá tudo o que teria feito, mas não o fará realmente. / ul>
Resposta
Na minha máquina CentOS 6.5 para configurar o logrotate para nginx, tive que fazer isso:
logrotate /etc/logrotate.d/nginx
E então eu verifiquei se logrotate cuidando da minha nova configuração nginx assim:
cat /var/lib/logrotate.status
logrotate
está programada para ser executada uma vez por dia.logrotate
tem um-d
opção para teste (ou " depuração "), I ' d recomendo executá-lo pelo menos uma vez com isso.su root syslog
. O que interrompe o logrotate quando não é adicionado. Para completar a ' frustração das pessoas, quando adicionam a diretiva e executam (forçar) o logrotate, ele continua a cuspir "error: skipping "/var/log/syslog" because parent directory has insecure permissions (It's world writable or writable by group which is not "root" ...
" por 20 horas após a alteração da configuração, como se as configurações / processo são armazenados em cache !? Se você estiver preso aí, chgrp em / var / log para root, execute logrotate, chgrp de volta para syslog. Isso ficará claro na próxima execução