Como verificar se a rotação de logs está configurada no Linux

LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar se a rotação de logs está configurada em um sistema Linux. A rotação de logs é um processo crucial para gerenciar arquivos de log, impedindo que consumam espaço em disco excessivo. Você explorará o arquivo de configuração principal do logrotate, examinará scripts de rotação de logs específicos de aplicativos e usará o comando logrotate -d para inspecionar o status e simular o processo de rotação de logs.

Ao seguir as etapas neste laboratório, você obterá experiência prática em verificar e entender a configuração da rotação de logs em seu sistema Linux, garantindo um gerenciamento eficiente dos arquivos de log.

Verificar a configuração do logrotate com cat /etc/logrotate.conf

Nesta etapa, você aprenderá como visualizar o arquivo de configuração principal para o logrotate. O logrotate é um utilitário projetado para simplificar a administração de arquivos de log em sistemas que geram muitos arquivos de log. Ele permite a rotação, compressão, remoção e envio por e-mail automáticos de arquivos de log.

O arquivo de configuração principal para o logrotate está localizado em /etc/logrotate.conf. Este arquivo contém configurações globais e inclui configurações para aplicativos ou serviços específicos do diretório /etc/logrotate.d/.

Para visualizar o conteúdo do arquivo de configuração principal do logrotate, você usará o comando cat. O comando cat é um utilitário Unix padrão que lê arquivos sequencialmente e os escreve na saída padrão.

Abra seu terminal, caso ainda não esteja aberto. Você pode fazer isso clicando no ícone Xfce Terminal no lado esquerdo da sua área de trabalho.

Agora, digite o seguinte comando no seu terminal e pressione Enter:

cat /etc/logrotate.conf

Este comando exibirá todo o conteúdo do arquivo /etc/logrotate.conf diretamente no seu terminal.

Você verá uma saída semelhante a esta:

## see "man logrotate" for details

## rotate log files weekly
weekly

## use the syslog group by default, since this is the owning group
## of /var/log/syslog.
su root syslog

## keep 4 weeks worth of backlogs
rotate 4

## create new (empty) log files after rotating old ones
create

## uncomment this if you want your log files compressed
#compress

## packages drop log rotation information into this directory
include /etc/logrotate.d

## system-specific logs may be also be configured here.

Esta saída mostra as configurações padrão para o logrotate, como a rotação de logs semanalmente (weekly), a manutenção de 4 semanas de logs (rotate 4) e a criação de novos arquivos de log após a rotação (create). Ele também inclui a linha include /etc/logrotate.d, que informa ao logrotate para ler arquivos de configuração adicionais desse diretório.

Compreender o arquivo de configuração principal é o primeiro passo para gerenciar a rotação de logs em um sistema Linux.

Clique em Continuar para prosseguir para a próxima etapa.

Verificar os scripts do logrotate em /etc/logrotate.d

Na etapa anterior, você viu que o arquivo principal logrotate.conf inclui arquivos de configuração do diretório /etc/logrotate.d/. Este diretório é onde aplicativos e serviços individuais colocam seus arquivos de configuração logrotate específicos.

Cada arquivo em /etc/logrotate.d/ normalmente contém instruções sobre como rotacionar os arquivos de log para um determinado programa. Essa abordagem modular facilita o gerenciamento da rotação de logs para muitos serviços diferentes em um sistema.

Para ver quais arquivos de configuração estão presentes neste diretório, você usará o comando ls. O comando ls lista o conteúdo de um diretório.

Digite o seguinte comando no seu terminal e pressione Enter:

ls /etc/logrotate.d/

Este comando listará todos os arquivos dentro do diretório /etc/logrotate.d/.

Você verá uma lista de arquivos, que pode variar dependendo do software instalado no sistema. Terá uma aparência semelhante a esta:

apt  auth.log  dpkg  rsyslog

Esses nomes de arquivos geralmente correspondem aos serviços ou aplicativos cujos logs estão sendo rotacionados (por exemplo, apt para o gerenciador de pacotes, rsyslog para logs do sistema).

Para dar uma olhada mais de perto em um desses arquivos de configuração, você pode usar o comando cat novamente. Por exemplo, vamos visualizar a configuração para apt:

cat /etc/logrotate.d/apt

Isso exibirá o conteúdo do arquivo de configuração apt do logrotate. Você verá diretivas específicas para rotacionar os arquivos de log apt, como quais arquivos de log rotacionar, com que frequência e quantos logs antigos manter.

Ao examinar os arquivos em /etc/logrotate.d/, você pode entender como a rotação de logs é configurada para diferentes serviços em seu sistema.

Clique em Continuar para passar para a próxima etapa.

Inspecionar o status do logrotate com logrotate -d

Nesta etapa final, você aprenderá como usar o comando logrotate com a opção -d para realizar uma "execução a seco" (dry run). Uma execução a seco simula as ações que o logrotate tomaria sem realmente executá-las. Isso é extremamente útil para testar suas configurações do logrotate e entender o que acontecerá quando o logrotate for executado de verdade.

A opção -d significa "debug" (depurar) ou "dry run" (execução a seco). Quando você a usa, o logrotate lerá seus arquivos de configuração e relatará o que faria, mas não modificará nenhum arquivo nem rotacionará nenhum log.

Como o logrotate normalmente requer privilégios de root para acessar e modificar arquivos de log em diretórios do sistema como /var/log, você precisará usar o comando sudo para executar o logrotate com as permissões necessárias. Lembre-se de que o usuário labex tem privilégios sudo sem precisar de uma senha neste ambiente.

Digite o seguinte comando no seu terminal e pressione Enter:

sudo logrotate -d /etc/logrotate.conf

Vamos detalhar este comando:

  • sudo: Executa o comando com privilégios de superusuário.
  • logrotate: O utilitário de linha de comando para gerenciar arquivos de log.
  • -d: A opção para realizar uma execução a seco (modo de depuração).
  • /etc/logrotate.conf: O arquivo de configuração principal que o logrotate deve ler.

A saída deste comando será bastante detalhada. Ele mostrará quais arquivos de log o logrotate está considerando, quais diretivas de configuração se aplicam a eles e se a rotação é necessária com base no estado e na configuração atuais.

Você verá uma saída detalhando o processamento do arquivo de configuração principal e os arquivos incluídos de /etc/logrotate.d/. Ele indicará para cada arquivo de log se ele precisa ser rotacionado e por quê (por exemplo, tamanho, idade).

A saída de exemplo pode incluir linhas como:

reading config file /etc/logrotate.conf
including /etc/logrotate.d
reading config file apt
...
rotating pattern: /var/log/apt/term.log /var/log/apt/history.log  weekly
...
considering log /var/log/apt/term.log
  log does not need rotating
considering log /var/log/apt/history.log
  log does not need rotating
...

Esta saída confirma que o logrotate leu a configuração para apt e determinou que seus arquivos de log atualmente não precisam de rotação.

Usar logrotate -d é uma etapa crucial antes de implantar quaisquer configurações logrotate novas ou modificadas para garantir que elas funcionem conforme o esperado, sem causar problemas indesejados com seus arquivos de log.

Você agora inspecionou com sucesso a configuração principal do logrotate, visualizou os arquivos de configuração individuais e realizou uma execução a seco para ver como o logrotate se comportaria.

Clique em Continuar para concluir este laboratório.

Resumo

Neste laboratório, você aprendeu como verificar se a rotação de logs está configurada no Linux. Você começou examinando o arquivo de configuração principal do logrotate, localizado em /etc/logrotate.conf, usando o comando cat. Esta etapa mostrou as configurações globais para a rotação de logs, como frequência de rotação, período de retenção e a inclusão de configurações específicas de aplicativos do diretório /etc/logrotate.d.

Após a inspeção da configuração principal, você normalmente prosseguiria para verificar os scripts individuais do logrotate dentro do diretório /etc/logrotate.d para entender como os logs de aplicativos específicos são tratados. Finalmente, você inspecionaria o status do logrotate usando o comando logrotate -d para realizar uma execução a seco (dry run) e ver como a rotação de logs seria executada sem realmente fazer alterações, permitindo que você confirmasse a eficácia da configuração.