Logs do sistema operacional – o que são e para que servem?

Você sabia que tudo – ou quase tudo – do que acontece durante o uso de um sistema operacional fica registrado?

Os logs do sistema operacional, são importantes recursos que os sistemas operacionais mais comumente utilizados oferecem e que se adequadamente conhecidos e utilizados, fornecem importante subsídio para segurança, usabilidade, manutenção e correção de problemas.

Vamos conversar a respeito?

O que são logs do sistema operacional?

Logs são arquivos de texto nos quais são registradas informações diversas, geralmente seguindo a cronologia dos eventos acontecidos. A palavra log em português, é registro.

E esse é seu papel primário em um sistema operacional, ou seja, registrar eventos de diferentes naturezas e que em algum momento podem ser úteis.

Desde o momento em que o sistema operacional é iniciado, os primeiros logs começam a serem gravados. Assim, tanto no Windows, como no Linux ou no MacOS, ao acessar o log correspondente, é possível visualizar data, horário e o carregamento do kernel, bem como se há algum erro ou ação excepcional executada.

Ou seja, o serviço de criação e armazenamento de registros / logs, é das primeiras coisas que funciona ao carregar o sistema operacional.

Essa prioridade na inicialização, tem por objetivo que o maior número de eventos ocorridos durante o uso do sistema operacional, possam ser registrados. Além disso, até mesmo último evento de encerramento do sistema que interrompe o fornecimento de energia, é registrado antes que ele efetivamente ocorra.

Quais logs existem no sistema operacional?

Dependendo do sistema operacional utilizado, diferentes logs podem ser gerados e estar disponíveis.

Basicamente e em linhas gerais e independente do sistema operacional, há logs relativos a usuários, serviços ou aplicativos e ao próprio sistema operacional.

O Windows produz e armazena logs de forma diferente dos sistemas que surgiram em decorrência do Unix, como o MacOS e Linux.

Em relação aos dois últimos, por padrão já há uma quantidade de logs maior do que é produzida no Windows e para muitos dos serviços disponíveis, é possível se configurar para geração de logs, se por acaso ele não estiver disponível por padrão, sendo que em alguns casos, até mesmo a escolha de quais dados podem ser gravados, é possível.

MacOs e Linux usam a estrutura de diretórios e partições, criando pastas específicas para os respectivos logs.

Assim por exemplo, é possível encontrar em um servidor de hospedagem Linux, rodando cPanel alguns dos principais logs, nos paths que seguem:

  • Logs de acesso e ações de usuários - /usr/local/cpanel/logs/access_log

  • Log de auditoria (criação e remoção de contas, etc) - /var/cpanel/accounting.log

  • Logs de backup - /usr/local/cpanel/logs/cpbackup

  • RoundCube - /var/cpanel/roundcube/log/

  • Estatísticas de acesso aos sites - /usr/local/cpanel/logs/stats_log

  • Acessos a domínios (servidor web) - /usr/local/apache/domlogs/dominio

  • Erros do servidor web (Apache) e CGI - /usr/local/apache/logs/error_log

  • Entrega e recebimento de e-mail (Exim) - /var/log/exim_mainlog

  • Fila de e-mail (Entrada) - /var/spool/exim/input/

  • Erro de banco de dados (MySQL) - /var/lib/mysql/{SERVER_NAME}.err

  • Login IMAP, POP, transações, erros, etc - /var/log/maillog

O que temos acima, é apenas uma pequena amostra, diante do que é possível se ter uma ideia do conceito usado para localizar um log no Linux, mas que dependendo da distribuição, dos serviços instalados e do propósito para o qual serve a máquina, pode sofrer algumas pequenas alterações.

Como acessar os logs do sistema operacional?

Da mesma forma que a localização e disponibilidade de logs varia de acordo com o sistema operacional, a forma de acesso também tem suas diferenças.

No caso do Windows, por meio da interface gráfica, ao clicar com o botão direito do mouse sobre o logotipo do Windows no menu iniciar, abre um menu flutuante, no qual a opção “Visualizador de Eventos” dá acesso aos logs que o sistema supõe que podem ser úteis ao usuário.

Nesse caso, estão disponíveis:

  • Eventos associados a execução de aplicativos;

  • Segurança e que relaciona-se com auditoria de eventos, como logon em uma conta de usuário;

  • Instalação, mas que resume-se a instalação de updates do sistema operacional;

  • Sistema e que contém desde dados de inicialização, bem como erros de aplicativos e encerramento do sistema.

Na prática há outros logs no sistema da Microsoft, mas aparentemente os responsáveis por esse recurso, devem julgar que esses poucos são suficientes para o controle e monitoramento do que ocorre no sistema da Microsoft.

Já nos sistemas que tem origem no Unix, como é o caso do MacOS e Linux, a quantidade e disponibilidade de logs é bem mais ampla, mais específica e os dados colhidos e registrados, são mais detalhados.

Usuários do MacOs têm um aplicativo que também por meio de interface gráfica, pode-se escolher logs contidos em determinadas pastas do sistema, como a pasta USR, LIB, VAR ou SYSTEM.

Mas da mesma forma que em outros sistemas, os logs também são em formato de texto e o App consiste apenas de uma facilidade, não apenas por ser visualmente semelhante a outros programas e incluir facilidades como cliques para selecionar o log a ser visualizado, como não exigir que se saiba o caminho ou path em que cada log na estrutura de pastas / diretórios.

Mesmo oferecendo um número de opções bem maior e logs mais completos que o Windows, essa opção ainda restringe o universo de logs disponível para acesso.

Alternativamente e da mesma forma que qualquer distribuição Linux, é possível acessar logs no MacOs via terminal.

Independente da distribuição, já que algumas podem fornecer funcionalidades semelhantes ao console do MacOs, o acesso aos logs no Linux costumam ser feitos via terminal usando editores como Vi ou Vim, Nano, Emacs ou outros que podem ser instalados, seguido do path do log que se deseja avaliar.

Quem está acostumado com interfaces gráficas, pode achar a tela preta e fonte branca, um inconveniente.

No entanto, os usuários Linux adeptos da linha de comando e conhecedores de comandos como GREP, SED, CAT, TAIL, entre outros existentes no Shell, conseguem poderosas extrações de dados de gigantescos arquivos de log, de forma rápida, completa, consistindo de um poderoso recurso para coleta e interpretação dos dados de um log,

Além disso, sistemas oriundos do padrão Unix, como o MacOS e Linux, gravam logs mais variados e específicos, como vimos no tópico sobre quais logs existem no sistema operacional.

Para que servem os logs do sistema operacional?

Há pastas de logs de cada serviço presente no sistema operacional, pastas com logs de usuários, de erros, do sistema operacional propriamente dito, o que faz com que exista registro de exatamente tudo o que acontece e consequentemente se algo não funciona bem, ou como deveria, haverá uma – ou muitas – linha relativa ao problema.

Boa parte dos erros e que podem impedir o adequado funcionamento do sistema operacional, pode ser consultado nos sites de busca, em fóruns de discussão especializados e muitas vezes na área de suporte das empresas responsáveis pelos sistemas e assim encontrar soluções para solucionar tais erros.

Mas não necessariamente arquivos de log precisam manter apenas registros de problemas.

Suponhamos que tenhamos o serviço de e-mail EXIM instalado em um servidor. Cada mensagem enviada, recebida, cada tentativa de conexão SMTP, cada desconexão, ou seja, toda ação das trocas de e-mail, ficam registradas no arquivo de log exim_mainlog (registro principal do exim).

Mais do que registrar tudo o que ocorre durante o funcionamento do sistema operacional, isso deve servir a um propósito maior.

O registro de eventos em logs, tem como primeiro propósito permitir a um administrador, mas também a usuários, saber tudo o que aconteceu em um período específico, seja um problema ou um evento qualquer que mereça controle ou conhecimento.

Vamos tomar como exemplo, o já mencionado log do Exim, que é um serviço de e-mail para servidores Linux.

Se um determinado usuário informa que efetuou o envio de uma mensagem para uma determinada conta de e-mail e o destinatário alega que não recebeu a mensagem, o log do Exim contém se o envio ocorreu, precisando data, horário e status do envio.

Essa informação é particularmente útil, pois a confirmação de recebimento por parte do servidor do destinatário, indica que é o suporte técnico do destinatário que deve averiguar e informar o porquê do não recebimento.

Suponhamos ainda que se tenha um firewall nesse mesmo servidor. Pelo respectivo log, é possível avaliar se algum endereço IP de algum servidor tentou efetuar conexões não autorizadas, quantas tentativas foram feitas, dias, horários, quais portas foram tentadas e se algum bloqueio ocorreu.

Em uma terceira possibilidade, imaginemos uma conta de hospedagem na qual existe um site baseado no WordPress. Se algum recurso do site resultante de algum plugin do WordPress não funciona como deveria, por intermédio da avaliação de um log de erro do PHP, é possível saber se o erro deveu-se a uma biblioteca ou extensão do PHP indisponível, por exemplo.

Por fim, se quisermos saber quantas vezes, em quais dias e horários um usuário de e-mail acessou sua conta, ou ainda se houve erro em alguma das tentativas, há logs que fornecem esse tipo de informação

Ou seja, logs do sistema operacional servem para identificar situações as mais diversas e consequentemente gerar relatórios, monitorar o uso do sistema e dos seus serviços, identificar erros e assim estabelecer políticas de uso, manutenção, melhorias e propor soluções.

E se tudo isso não fosse o bastante, também servem como registros documentais e até mesmo como provas em litígios legais.

Por exemplo, o Marco Civil da Internet, regulamentado pela Lei n° 12 965/2014, o qual prevê princípios, garantias, direitos e deveres para quem usa a rede mundial de computadores, entre outros mecanismos poderá fazer uso de logs produzidos pelos servidores do provedores de acesso à Internet, para rastrear e identificar ações de usuários.

Conclusão

Logs do sistema operacional são registros em formato texto, da cronologia de eventos que ocorrem no sistema operacional e que pode ser um serviço, uma aplicação ou ação de um usuário e que servem para monitoramento, auditoria, segurança e correção de problemas diversos.

Comentários ({{totalComentarios}})