Logrotate- (8) Página manual

Logrotate- (8) Página manual

Nome

Logrotate - gira, comprime e envia logs do sistema

Sinopse

Logrotate [[-dv] [-f|-força] [-s|-estado Statefile] config_file..

Descrição

Logrotate foi projetado para facilitar a administração de sistemas que geram um grande número de arquivos de log. Ele permite rotação automática, compressão, remoção e correspondência de arquivos de log. Cada arquivo de log pode ser tratado diariamente, semanalmente, mensalmente ou quando cresce muito grande.

Normalmente, Logrotate é executado como um trabalho diário de cron. Ele não modificará um log mais de uma vez em um dia, a menos que o critério para esse log seja baseado no tamanho do log e Logrotate está sendo executado mais de uma vez por dia, ou a menos que o -f ou -força a opção é usada.

Qualquer número de arquivos de configuração pode ser fornecido na linha de comando. Arquivos de configuração posteriores podem substituir as opções fornecidas nos arquivos anteriores, portanto a ordem em que o Logrotate Os arquivos de configuração estão listados é importante. Normalmente, um único arquivo de configuração que inclui outros arquivos de configuração que são necessários devem ser usados. Veja abaixo para obter mais informações sobre como usar o incluir diretiva para realizar isso. Se um diretório for fornecido na linha de comando, cada arquivo nesse diretório é usado como um arquivo de configuração.

Se nenhum argumento da linha de comando for apresentado, Logrotate Imprimirá as informações da versão e dos direitos autorais, juntamente com um breve resumo do uso. Se ocorrer algum erro ao girar toras, Logrotate sairá com status diferente de zero.



Opções

-d
Liga o modo de depuração e implica -v. No modo de depuração, nenhuma alteração será feita nos troncos ou no Logrotate arquivo de estado.
-f, -força
Diz Logrotate para forçar a rotação, mesmo que não ache que isso é necessário. Às vezes isso é útil depois de adicionar novas entradas a um Logrotate arquivo de configuração, ou se os arquivos de log antigos forem removidos manualmente, pois os novos arquivos serão criados, e o registro continuará corretamente.
-m, -correspondência
Diz Logrotate Qual comando usar ao enviar logs. Este comando deve aceitar dois argumentos: 1) o assunto da mensagem e 2) o destinatário. O comando deve então ler uma mensagem sobre entrada padrão e enviá -la para o destinatário. O comando de correio padrão é /usr/bin/Mail -s.
-s, -estado
Diz Logrotate Para usar um arquivo de estado alternativo. Isso é útil se o Logrotate estiver sendo executado como um usuário diferente para vários conjuntos de arquivos de log. O arquivo de estado padrão é /var/lib/logrotate/status.
-uso
Imprime uma breve mensagem de uso.
-v, -detalhado
Exibir mensagens durante a rotação.


Arquivo de configuração

Logrotate Lê tudo sobre os arquivos de log que ele deve lidar com a série de arquivos de configuração especificados na linha de comando. Cada arquivo de configuração pode definir opções globais (as definições locais substituem as globais e as definições posteriores substituem as anteriores) e especificar arquivos de log para girar. Um arquivo de configuração simples se parece com o seguinte:

 # amostra de arquivo de configuração de Logrotato Compress/var/log/Mensagens girar 5 pós -pós -fita semanal/usr/bin/killall -hup syslogd endscript "/var/log/httpd/acesso.log "/var/log/httpd/erro.log girate 5 email [email protected] Tamanho 100k compartilhado sharedScripts póstrotate/usr/bin/killall -hup httpd endscript/var/log/news/* girar mensalmente 2 olddir/var/log/news/Old Missingok póstrotate kill -hup 'gat/run/run/inn inn.pid 'endcript nocompress ~/log/*.registro  

As primeiras linhas estabelecem opções globais; No exemplo, os troncos são compactados após serem girados. Observe que os comentários podem aparecer em qualquer lugar do arquivo de configuração, desde que o primeiro personagem não-branco na linha seja um #.

A próxima seção do arquivo de configuração define como lidar com o arquivo de log /var/log/mensagens. O tronco passará por cinco rotações semanais antes de ser removido. Depois que o arquivo de log foi girado (mas antes da versão antiga do log ter sido compactada), o comando /sbin/killall -hup syslogd será executado.

A próxima seção define os parâmetros para ambos /var/log/httpd/acesso.registro e /var/log/httpd/erro.registro. Cada um é girado sempre que cresce mais de 100k de tamanho e os arquivos antigos de logs são enviados por correio (não compactado) para [email protected] depois de passar por 5 rotações, em vez de ser removido. O SharedScripts significa que o Póstrotate O script será executado apenas uma vez (depois que os troncos antigos forem compactados), não uma vez para cada tronco que é girado. Observe que os nomes dos arquivos de log podem ser incluídos nas cotações (e que as citações são necessárias se o nome contiver espaços). Regras de citação de concha normal se aplicam, com ', ““, e \ caracteres suportados.

A última seção define os parâmetros para todos os arquivos em /var/log/notícias. Cada arquivo é girado mensalmente. Isso é considerado uma diretiva de rotação única e, se ocorrerem erros para mais de um arquivo, os arquivos de log não são compactados.

Por favor, use curingas com cautela. Se você especificar *, Logrotate girará todos os arquivos, incluindo os rotacionados anteriormente. Uma maneira de contornar isso é usar o Olddir diretiva ou um curinga mais exato (como *.registro).

Se o diretório /var/log/notícias não existe, isso causará Logrotate Para relatar um erro. Este erro não pode ser interrompido com o Missingok diretivo.



Aqui estão mais informações sobre as diretivas que podem ser incluídas em um Logrotate arquivo de configuração:

comprimir
Versões antigas de arquivos de log são compactadas com gzip(1) por padrão. Veja também Nocompress.
compresscmd
Especifica qual comando para usar para comprimir arquivos de log. O padrão é gzip(1) . Veja também comprimir.
Uncompresscmd
Especifica qual comando a ser usado para não confirmar arquivos de log. O padrão é Gunzip(1) .
CompressExt
Especifica qual extensão a ser usada em arquivos de madeira compactados, se a compactação estiver ativada. O padrão segue o do comando de compressão padrão (.gz).
compressões
As opções de linha de comando podem ser passadas para o programa de compressão, se estiver em uso. O padrão, para gzip, é "-9" (compressão máxima).
cópia de
Faça uma cópia do arquivo de log, mas não altere o original. Esta opção pode ser usada, por exemplo, para fazer um instantâneo do arquivo de log atual ou quando algum outro utilitário precisa truncar ou analisar o arquivo. Quando esta opção é usada, o criar a opção não terá efeito, pois o arquivo de log antigo permanece no lugar.


copytruncate
Truncar o arquivo de log original para o tamanho zero no lugar depois de criar uma cópia, em vez de mover o arquivo de log antigo e, opcionalmente, criar um novo. Ele pode ser usado quando algum programa não pode ser instruído a fechar seu arquivo de log e, portanto, pode continuar escrevendo (anexando) ao arquivo de log anterior para sempre. Observe que há uma fatia de tempo muito pequena entre copiar o arquivo e truncá -lo, para que alguns dados de registro possam ser perdidos. Quando esta opção é usada, o criar a opção não terá efeito, pois o arquivo de log antigo permanece no lugar.
criar modo proprietário grupo
Imediatamente após a rotação (antes do Póstrotate Script é executado) O arquivo de log é criado (com o mesmo nome que o arquivo de log acabou de girar). modo especifica o modo para o arquivo de log em octal (o mesmo que chmod(2)), proprietário Especifica o nome de usuário que será o dono do arquivo de log e grupo Especifica o grupo em que o arquivo de log pertence. Qualquer um dos atributos do arquivo de log pode ser omitido; nesse caso, esses atributos para o novo arquivo usarão os mesmos valores que o arquivo de log original para os atributos omitidos. Esta opção pode ser desativada usando o nocreado opção.
diário
Os arquivos de log são girados todos os dias.
DATEEXT
Arquive versões antigas de arquivos de log, adicionando uma extensão diária como yyyymmdd em vez de simplesmente adicionar um número.
Formato de data
Especifique a extensão para DATEEXT usando a notação semelhante a STRFTIME (3) função. Apenas %y %m e %d especificadores são permitidos. O valor padrão é -%y%m%d. Observe que também o caráter que separa o nome do log da extensão faz parte da string dateFormat.


toutCompress
Adiar a compactação do arquivo de log anterior no próximo ciclo de rotação. Isso só tem efeito quando usado em combinação com comprimir. Ele pode ser usado quando algum programa não pode ser instruído a fechar seu arquivo de log e, portanto, pode continuar escrevendo para o arquivo de log anterior por algum tempo.
extensão ext
Arquivos de log com ext A extensão pode mantê -lo após a rotação. Se a compactação for usada, a extensão de compressão (normalmente .gz) aparece depois ext. Por exemplo, você tem um arquivo de log chamado mylog.foo e quero girá -lo para o mylog.1.foo.gz em vez de mylog.foo.1.gz.
Ifempty
Gire o arquivo de log mesmo que esteja vazio, substituindo o notifempty opção (Ifempty é o padrão).
incluir file_or_directory
Lê o arquivo dado como um argumento como se fosse incluído em linha onde o incluir A diretiva aparece. Se um diretório for fornecido, a maioria dos arquivos nesse diretório é lida em ordem alfabética antes de o processamento do arquivo inclusive continua. Os únicos arquivos ignorados são arquivos que não são arquivos regulares (como diretórios e tubos nomeados) e arquivos cujos nomes terminam com uma das extensões tabu, conforme especificado pelo Tabooext diretivo. O incluir A diretiva pode não aparecer dentro de uma definição de arquivo de log.
correspondência endereço
Quando um tronco é girado para fora da existência, ele é enviado para endereço. Se nenhum correio deve ser gerado por um determinado log, o NOMAIL a diretiva pode ser usada.
Mailfirst
Ao usar o correspondência comando, envie o arquivo recém-rotulado, em vez do arquivo sobre o expirado.
Maillast
Ao usar o correspondência Comando, envie o arquivo de envio sobre o arquivo, em vez do arquivo recém-rotulado (este é o padrão).


Maxage contar
Remova os troncos rotacionados mais antigos que os dias. A idade só é verificada se o arquivo de log deve ser girado. Os arquivos são enviados para o endereço configurado se Maillast e correspondência estão configurados.
MinSize tamanho
Os arquivos de log são girados quando crescem mais do que tamanho bytes, mas não antes do intervalo de tempo adicionalmente especificado (diário, semanalmente, por mês, ou anual). O relacionado tamanho A opção é semelhante, exceto que é mutuamente exclusiva com as opções de intervalo de tempo e faz com que os arquivos de log sejam girados sem considerar o último tempo de rotação. Quando MinSize é usado, tanto o tamanho quanto o registro de registro de um arquivo de log são considerados.
Missingok
Se o arquivo de log estiver faltando, vá para o próximo sem emitir uma mensagem de erro. Veja também Nomissingok.
por mês
Os arquivos de log são girados da primeira vez Logrotate é executado em um mês (isso normalmente é no primeiro dia do mês).
Nocompress
Versões antigas de arquivos de log não são compactadas. Veja também comprimir.
nocópia
Não copie o arquivo de log original e deixe -o no lugar. (Isso substitui o cópia de opção).
nocopytruncato
Não truque o arquivo de log original no lugar depois de criar uma cópia (isso substitui o copytruncate opção).
nocreado
Novos arquivos de log não são criados (isso substitui o criar opção).


NodelayCompress
Não adie a compactação do arquivo de log anterior no próximo ciclo de rotação (isso substitui o toutCompress opção).
NOHATEEXT
Não arquiva versões antigas de arquivos de log com extensão de data (isso substitui o DATEEXT opção).
NOMAIL
Não envie arquivos antigos de log para nenhum endereço.
Nomissingok
Se um arquivo de log não existir, emita um erro. Este é o padrão.
Noolddir
Os logs são girados no diretório em que normalmente residem (isso substitui o Olddir opção).
NosharedScripts
Correr prerrotate e Póstrotate scripts para cada arquivo de log que é girado (este é o padrão e substitui o SharedScripts opção). Se os scripts sairem com erro, as ações restantes não serão executadas apenas para o log afetado.
Noshred
Não use Destruir Ao excluir arquivos de log antigos. Veja também Destruir.
notifempty
Não gire o tronco se estiver vazio (isso substitui o Ifempty opção).
Olddir diretório
Os logs são movidos para diretório para rotação. O diretório Deve estar no mesmo dispositivo físico que o arquivo de log que está sendo girado e é considerado em relação ao diretório que mantém o arquivo de log, a menos que um nome de caminho absoluto seja especificado. Quando esta opção é usada, todas as versões antigas do log acabam em diretório. Esta opção pode ser substituída pelo Noolddir opção.


Póstrotate/EndScript
As linhas entre Póstrotate e EndScript (ambos devem aparecer nas linhas por si mesmos) são executados após a gama do arquivo de log ser girada. Essas diretivas só podem aparecer dentro de uma definição de arquivo de log. Veja também prerrotate. Ver SharedScripts e NosharedScripts para manuseio de erros.
prerrotate/EndScript
As linhas entre prerrotate e EndScript (ambos devem aparecer nas linhas por si mesmos) são executados antes que o arquivo de log seja girado e somente se o log for realmente girado. Essas diretivas só podem aparecer dentro de uma definição de arquivo de log. Veja também Póstrotate. Ver SharedScripts e NosharedScripts para manuseio de erros.
FirstAction/EndScript
As linhas entre FirstAction e EndScript (os que devem aparecer nas linhas por si mesmos) são executados uma vez antes de todos os arquivos de log que correspondem ao padrão curinga são girados, antes que o script prerrotate seja executado e apenas se pelo menos um log for realmente girado. Essas diretrizes aparecem mayonly dentro de uma definição de arquivo de log. Se o script sair com erro, nenhum processamento adicional será feito. Ver LastAction também.
LastAction/EndScript
As linhas entre LastAction e EndScript (os que devem aparecer nas linhas por si mesmos) são executados depois que todos os arquivos de log que correspondem ao padrão curinga são girados, depois que o script póstrotate for executado e apenas se pelo menos um log for girado. Essas diretivas só podem aparecer dentro de uma definição de arquivo de log. Se o script sair com erro, apenas uma mensagem de erro será mostrada (pois esta é a última ação).

Veja também FirstAction.

girar contar
Os arquivos de log são girados contar tempos antes de ser removido ou enviado para o endereço especificado em um correspondência diretivo. Se contar é 0, versões antigas são removidas em vez de girar.
tamanho tamanho
Os arquivos de log são girados quando crescem mais do que tamanho bytes. Se tamanho é seguido pela M, o tamanho se assumido estar em megabytes. Se o G o sufixo é usado, o tamanho é em gigabytes. Se o k é usado, o tamanho é em Kilobytes. Então Tamanho 100, tamanho 100k, e Tamanho 100m são todos válidos.
SharedScripts
Normalmente, prerrotate e Póstrotate Scripts são executados para cada log que é girado, o que significa que um único script pode ser executado várias vezes para entradas de arquivo de log que correspondem a vários arquivos (como o /var/log/news/* exemplo). Se SharedScript é especificado, os scripts são executados apenas uma vez, não importa quantos logs correspondam ao padrão curinga. No entanto, se nenhum dos troncos do padrão exigir, os scripts não serão executados. Se os scripts sairem com erro, as ações restantes não serão executadas para nenhum registro. Esta opção substitui o NosharedScripts opção e implica criar opção.
Destruir
Excluir arquivos de log usando Destruir -u em vez de desvincular (). Isso deve garantir que os logs não sejam legíveis após a exclusão programada; Isso está desligado por padrão. Veja também Noshred.
Shredcycles contar
Pergunta GNU Destruir para Overwite Log Arquivos contar tempos antes da exclusão. Sem esta opção, DestruirO padrão será usado.
começar contar
Este é o número a ser usado como base para rotação. Por exemplo, se você especificar 0, os logs serão criados com um .0 extensão à medida que são girados dos arquivos de log original. Se você especificar 9, os arquivos de log serão criados com um .9, pulando 0-8. Arquivos serão girados o número de vezes especificado com o girar diretivo.
Tabooext [+] lista
A lista de extensão do tabu atual é alterada (consulte o incluir Diretiva para obter informações sobre as extensões tabus). Se A + preceder a lista de extensões, a lista de extensão do tabu atual será aumentada, caso contrário, será substituída. Na startup, a lista de extensão do tabu contém .rpmorig, .rpmsave, v, .SWP, .rpmnew, ~, .CFSAVED, .rhn-cfg-tmp-*, .dpkg-dist, .DPKG Old, .DPKG-New, .desabilitado.
semanalmente
Os arquivos de log são girados se o dia atual da semana for menor que o dia da semana da última rotação ou se mais de uma semana se passaram desde a última rotação. Normalmente, é o mesmo que os registros giratórios no primeiro dia da semana, mas se Logrotate não está sendo executado todas as noites, uma rotação de toras acontecerá na primeira oportunidade válida.
anual
Os arquivos de log são girados se o ano atual não for o mesmo que a última rotação.


arquivos

/var/lib/Logrotate.status
Arquivo de estado padrão.
/etc/Logrotate.conf
Opções de configuração.

Veja também

gzip(1)

Notas

O Mate todos(1) o programa em Debian é encontrado no psmisc pacote.

Autores

Erik Troan Preston Brown Correções e mudanças para o Debian Bypaul Martin 

Tutoriais do Linux relacionados:

  • Como criar um trabalho Cron em Kubernetes
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Como executar comandos periodicamente com Anacron no Linux
  • Loging e auditoria avançados no Linux
  • Mastering Bash Script Loops
  • Coisas para instalar no Ubuntu 20.04
  • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
  • Como gerenciar e solucionar problemas de toras Kubernetes
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Melhor ferramenta de compressão no Linux