Categories
por

Como ver e escrever nos ficheiros de registo do sistema no ubuntu

Então, se houver algum problema com o meu computador, seja hardware ou software, quais são os principais ficheiros de registo e onde estão localizados?

Existe também um local genérico onde os ficheiros de registo dos outros pacotes possam estar localizados?

3 Respostas 3

Todos os ficheiros de registo estão localizados em /var/log directory. Nesse directório, existem ficheiros específicos para cada tipo de registos. Por exemplo, os registos do sistema, tais como actividades do kernel, são registados no ficheiro syslog.

Alguns dos ficheiros de registo mais comuns nesse directório são :

No directório apt há um ficheiro history. log que guarda toda a informação de instalação e remoção do pacote, mesmo a compilação inicial do sistema como Live CD. Pode abrir este ficheiro para ver este ficheiro muito interessante.

No directório dist-upgrade existe um ficheiro apt. log que regista a informação durante as actualizações da distribuição

No instalador de directórios podem ser encontrados os ficheiros de registo que são criados durante a instalação.

Existe um ficheiro apport. log que guarda informação sobre falhas no seu sistema e as reporta.

O ficheiro auth. log inclui informação sobre as actividades de autenticação, tais como quando se autentica como utilizador root através do sudo.

O ficheiro dpkg. log guarda os detalhes de baixo nível de instalação e remoção de pacotes relacionados com o dpkg . Talvez esteja ciente de que o sistema apt depende do dpkg para instalação e remoção de pacotes.

O ficheiro boot. log inclui informação de cada arranque.

kern. log guarda informações do kernel, tais como avisos, erros, etc.

alternatives. log inclui o histórico de todas as alternativas definidas pelos vários pacotes e a sua remoção através do comando update-alternatives.

Outro ficheiro log importante é o Xorg. log que inclui informação sobre o driver gráfico, as suas falhas, avisos, etc.

Alguns outros tipos de ficheiros de Log podem estar lá, dependendo dos pacotes instalados. Por exemplo, o Meu sistema também inclui um ficheiro de log epoptes. log que só estará lá se instalar o pacote epoptes.

Alterações após o systemd

Com o advento do systemd , o registo é maioritariamente tratado pelo utilitário journalctl e armazena os registos em formato binário em /var/lib/systemd/catalog/database de dados. Este ficheiro enumera todos os registos incluindo kernel, boot e registos de aplicações e fornece os registos necessários através do utilitário journalctl.

Aqui está um bom artigo no journalctl sobre como o pode utilizar para ir buscar as informações de registo requeridas.

Na imagem de ecrã abaixo é mostrada a maioria dos registos importantes de /var/log. Nesse local, existem frequentemente outras pastas de outras aplicações, tais como samba ou apache2, se o tiver instalado.

Para ver um registo em tempo real pode utilizar o gnome-system-log ou, por exemplo, utilizar

Todos os registos podem ser analisados mais facilmente quer com a opção de filtro no gnome-system-log ou usando o grep para procurar um termo em particular. Por exemplo, se eu quisesse encontrar referências ao meu hardware SiS, poderia entrar:

A maioria dos registos na imagem do ecrã são auto-explicativos, no entanto, aqui ficam algumas notas rápidas:

Um Administrador Linux deve ser capaz de

É importante notar que o Linux mantém os seus ficheiros de registo no directório /var/log em formato texto.

Visualização dos registos do sistema no Ubuntu

Para chegar ao cerne de um problema, ou para ver se a sua aplicação ou sistema está a comportar-se da forma desejada, pode visualizar os ficheiros de registo do sistema graficamente ou através da linha de comando, das seguintes formas:

  • Utilitário Gnome Logs (Gráfico)
  • Utilitário Visualizador de ficheiros de registo (Gráfico)
  • Terminal Linux (Linha de Comando)

Ver ficheiros de registo através dos registos do Gnome

‘Logs’ é o utilitário padrão que vem com as últimas versões do Ubuntu, por exemplo, Ubuntu 20.04 LTS (Focal Fossa). Para aceder a ele,

Tipo Logs no traço do Ubuntu:

Poderá ver o utilitário Logs aberto, com a opção de visualizar logs para Aplicações, Sistema, Segurança e Hardware.

Clique no separador Sistema para ver os registos do sistema:

Aqui pode ver todos os registos do sistema juntamente com o tempo em que foram gerados. Pode realizar as seguintes acções através desta janela:

  • Visualizar o conteúdo de um registo clicando sobre ele.
  • Procurar um registo clicando no ícone de pesquisa e depois fornecendo palavras-chave na barra de pesquisa. A barra de pesquisa também oferece vários filtros que pode aplicar para especificar exactamente O quê (Seleccionar um campo Diário para filtrar os registos de acordo com o mesmo) e Quando (Seleccionar o intervalo de tempo dos registos a serem mostrados) que deseja ver:
  • Também pode exportar registos para um ficheiro clicando no botão de exportação localizado no canto superior direito da janela de Registos. Pode então guardar o ficheiro de registo, especificando um nome e localização.

Através do Visualizador de Ficheiros de Registo

O Visualizador de Ficheiros de Registo é o utilitário padrão que vem com as versões mais antigas do Ubuntu. Se a sua edição do Ubuntu não tiver esta aplicação por defeito, pode descarregá-la e instalá-la através do Ubuntu Software.

Para aceder ao Visualizador de Ficheiros de Registo:

  • Se instalou este programa através do Ubuntu Software, pode lançá-lo procurando-o no Ubuntu Software da seguinte forma e depois clicando no botão Launch:

O Visualizador de Ficheiros de Registo aparecerá como se segue:

O painel esquerdo da janela mostra várias categorias de registo predefinidas e o painel direito mostra uma lista de registos para a categoria seleccionada.

Clicar no separador Syslog para ver os registos do sistema. Pode procurar um registo específico utilizando o controlo ctrl+F e depois introduzir a palavra-chave. Quando é gerado um novo evento de registo, este é automaticamente adicionado à lista de registos e pode vê-lo em negrito. Pode também filtrar os seus registos através do menu Filtros, localizado na barra de menu superior.

Para ver um registo para uma aplicação específica, clique na opção Abrir do menu Ficheiro. A seguinte janela Abrir registo abrir-se-á para que possa escolher o registo de entre:

Clique num ficheiro de registo e clique em Abrir . Poderá agora ver os registos a partir do ficheiro de registo seleccionado no Visualizador de Ficheiros de Registo.

Ver os ficheiros de registo através do Terminal

Também pode ver os registos do sistema através da linha de comando, ou seja, o Terminal Ubuntu.

Abra o Terminal e introduza o seguinte comando:

Este comando vai buscar todas as mensagens ao buffer do kernel. Pode ver a saída da seguinte forma:

Verá que se trata de uma grande quantidade de informação. Esta informação só será útil se aplicarmos alguns filtros para ver o que queremos ver.

Personalização da saída do dmesg

  • Para ver as mensagens ao seu próprio ritmo, use o seguinte comando:

Este comando exibirá apenas um número específico de mensagens por ecrã. Pode premir Enter para passar para a mensagem seguinte ou premir Q para sair do comando.

  • Para procurar uma mensagem que contenha uma palavra-chave específica, utilize o seguinte comando:

Por exemplo, se quiser pesquisar todas as mensagens que contenham a palavra núcleo, pode usar o seguinte comando:

O Terminal exibirá agora apenas as mensagens que contenham a palavra “núcleo” a vermelho.

Abrir um ficheiro de registo com o comando cat

O comando dmesg abre todos os registos a partir do directório /var/log. Para abrir o ficheiro de registo a partir de algum outro local, usar o seguinte comando:

Este comando imprimirá os registos a partir do ficheiro syslog para o ecrã. Mais uma vez, observará que este comando imprime toda a informação e não é fácil de folhear. Aqui, mais uma vez, pode utilizar os filtros ‘grep’ e ‘less’ para exibir a saída desejada, como se segue:

Escrever para o registo do sistema

Por vezes precisamos de escrever mensagens personalizadas no nosso registo do sistema durante o processo de resolução de problemas. Tanto o Registo Gnome como o Visualizador de Ficheiros de Registo são construídos para exibir uma mensagem personalizada que pode ser escrita através do Terminal.

Abra o Terminal Ubuntu e escreva o seguinte comando:

No final da lista de registo acima, pode ver a mensagem de registo personalizada exibida no visualizador gráfico de ficheiros de registo.

Também pode usar o comando logger dentro de um script para fornecer informações adicionais. Nesse caso, por favor utilize o seguinte comando dentro do seu script:

Ao praticar juntamente com este tutorial, pode aprender a resolver problemas no seu sistema e aplicações, acedendo e compreendendo os registos do sistema.

  • ← Adicionar e Gerir Contas de Utilizador em Ubuntu 20.04 LTS
  • Como instalar e configurar o Git no Ubuntu 20.04 →

Karim Buzdar

Sobre o Autor: Karim Buzdar é licenciado em engenharia de telecomunicações e possui várias certificações de administrador de sistemas. Como engenheiro informático e autor técnico, escreve para vários sites na Internet. Pode contactar Karim no LinkedIn

Há muitos ficheiros de registo diferentes que servem todos diferentes propósitos. Ao tentar encontrar um registo sobre algo, deve começar por identificar o ficheiro mais relevante. Abaixo encontra-se uma lista de locais comuns de ficheiros de registo.

Registos do sistema

Os registos do sistema lidam exactamente com isso – o sistema Ubuntu – em oposição às aplicações extra adicionadas pelo utilizador. Estes registos podem conter informações sobre autorizações, daemons do sistema e mensagens do sistema.

Diário de autorização

Mantém um registo dos sistemas de autorização, tais como avisos de senha, o comando sudo e logins remotos.

Registo de Daemon

Daemons são programas que funcionam em segundo plano, geralmente sem interacção do utilizador. Por exemplo, servidor de visualização, sessões SSH, serviços de impressão, bluetooth, e muito mais.

Registo de depuração

Fornece informação de depuração a partir do sistema Ubuntu e aplicações.

Registo do Kernel

Registos do kernel do Linux.

Registo do sistema

Contém mais informações sobre o seu sistema. Se não conseguir encontrar nada nos outros registos, provavelmente está aqui.

Registos de aplicação

Algumas aplicações também criam registos em /var/log . Abaixo estão alguns exemplos.

Registos Apache

Localização: /var/log/apache2/ (subdirectório)

Apache cria vários ficheiros de registo no subdirectório /var/log/apache2/. O ficheiro access. log regista todos os pedidos feitos ao servidor para aceder a ficheiros. error. log regista todos os erros atirados pelo servidor.

X11 registos do servidor

O servidor X11 cria um ficheiro de registo separado para cada um dos seus monitores. Os números de visualização começam em zero, pelo que a sua primeira visualização (visualização 0) irá registar-se no Xorg.0.log . O próximo ecrã (ecrã 1) irá registar-se em Xorg.1.log , e assim por diante.

Registos não legíveis por humanos

Nem todos os ficheiros de registo são concebidos para serem lidos por humanos. Alguns foram feitos para serem analisados por aplicações. Abaixo estão alguns exemplos.

Registo de falhas no registo

Contém informações sobre falhas no login. Pode visualizá-lo com o comando faillog.

Último registo de logins

Contém informações sobre os últimos logins. Pode visualizá-lo com o comando de último logon.

Registo de registos de logins

Contém informações de login utilizadas por outros utilitários para descobrir quem entrou no sistema. Para ver os utilizadores actualmente ligados, utilize o comando who.

Esta não é uma lista exaustiva! Pode procurar na web mais locais relevantes para o que está a tentar depurar. Há também aqui uma lista mais longa.

3. Visualizar registos usando o Visualizador de Registos do Sistema GNOME

O Visualizador de Registos do Sistema GNOME fornece uma GUI simples para visualização e monitorização de ficheiros de registo. Se estiver a correr o Ubuntu 17.10 ou superior, será chamado Logs . Caso contrário, será sob o nome System Log .

Interface do Visualizador de Registos do Sistema

O visualizador de registos tem uma interface simples. A barra lateral à esquerda mostra uma lista de ficheiros de registo abertos, com o conteúdo do ficheiro actualmente seleccionado exposto à direita.

O visualizador de registo não só exibe mas também monitoriza os ficheiros de registo para alterações. O texto em negrito (como se vê na imagem acima) indica novas linhas que foram registadas após a abertura do ficheiro. Quando um registo que não está actualmente seleccionado é actualizado, o seu nome na lista de ficheiros ficará a negrito (como mostrado por auth. log na captura de ecrã acima).

Clicando na engrenagem no canto superior direito da janela abrirá um menu que lhe permitirá alterar algumas definições de visualização, assim como abrir e fechar ficheiros de registo.

Há também um ícone de lupa à direita da engrenagem que lhe permite pesquisar dentro do ficheiro de registo actualmente seleccionado.

Mais informações

Se desejar saber mais sobre o Visualizador de Registos do Sistema GNOME, pode visitar a documentação oficial.

4. Visualização e monitorização dos registos a partir da linha de comando

É também importante saber como ver os registos na linha de comando. Isto é especialmente útil quando se está ligado remotamente a um servidor e não se tem uma GUI.

Os seguintes comandos serão úteis quando se trabalha com ficheiros de registo a partir da linha de comando.

Visualização de ficheiros

A forma mais básica de visualizar ficheiros a partir da linha de comando é utilizando o comando cat. Basta passar no nome do ficheiro, e este produz todo o conteúdo do ficheiro: cat file. txt .

Isto pode ser inconveniente quando se lida com ficheiros grandes (o que não é invulgar para os registos!). Poderíamos usar um editor, embora isso possa ser exagerado só para ver um ficheiro. É aqui que entra o menos comando. Passamos-lhe o nome do ficheiro ( menos ficheiro. txt ), e ele abrirá o ficheiro numa interface simples. A partir daqui, podemos usar as teclas de setas (ou j/k se estiver familiarizado com Vim) para mover através do ficheiro, usar / para pesquisar, e premir q para sair. Há mais algumas características, todas elas descritas premindo h para abrir a ajuda.

Ver o início ou fim de um ficheiro

Podemos também querer ver rapidamente a primeira ou última n número de linhas de um ficheiro. É aqui que os comandos de cabeça e cauda vêm a calhar. Estes comandos funcionam muito como o gato , embora se possa especificar quantas linhas desde o início/fim do ficheiro que se quer ver. Para ver as primeiras 15 linhas de um ficheiro, corremos hea d-n 15 file. txt , e para ver as últimas 15, corremos tai l-n 15 file. txt . Devido à natureza dos ficheiros de registo serem anexados no fundo, o comando tai l-n será geralmente mais útil.

Ficheiros de monitorização

Para monitorizar um ficheiro de registo, pode passar a bandeir a-f à cauda . Este continuará a funcionar, imprimindo novas adições ao ficheiro, até o parar (Ctrl + C). Por exemplo: tai l-f file. txt .

Pesquisar ficheiros

Uma forma de procurar ficheiros é abrir o ficheiro em menos tempo e carregar / . Uma forma mais rápida de o fazer é utilizar o comando grep. Especificamos o que queremos pesquisar entre aspas, juntamente com o nome do ficheiro, e o grep imprimirá todas as linhas que contêm esse termo de pesquisa no ficheiro. Por exemplo, para pesquisar linhas contendo “test” em file. txt , executará o grep “test” file. txt .

Se o resultado de uma pesquisa grep for demasiado longo, poderá canalizá-lo para menos , permitindo-lhe rolar e pesquisar através dele: grep “test” file. txt | less .

Edição de ficheiros

A forma mais simples de editar ficheiros a partir da linha de comando é utilizar nano . nano é um simples editor de linha de comando, que tem todos os keybindings mais úteis impressos directamente no ecrã. Para o executar, basta dar-lhe um nome de ficheiro ( nano file. txt ). Para fechar ou guardar um ficheiro, prima Ctrl + X. O editor perguntar-lhe-á se deseja guardar as suas alterações. Prima y para sim ou n para não. Se escolher sim, ele pedir-lhe-á o nome do ficheiro para guardar o ficheiro como. Se estiver a editar um ficheiro existente, o nome do ficheiro já lá estará. Basta deixá-lo como está e guardá-lo-á no ficheiro adequado.

5. Conclusão

Parabéns, tem agora conhecimentos suficientes sobre a localização dos ficheiros de registo, utilização do Visualizador de Registo do Sistema GNOME e comandos básicos de linha de comando para monitorizar adequadamente e resolver problemas que surjam no seu sistema.

(Esta pergunta trata de uma questão semelhante, mas fala de um ficheiro de registo rotativo).

Hoje recebi uma mensagem do sistema relativa a um espaço muito baixo /var.

Como habitualmente, executei os comandos na linha de sudo apt-get clean que melhoraram apenas ligeiramente o cenário. Depois apaguei os ficheiros de registo rotacionados, o que, mais uma vez, proporcionou muito poucas melhorias.

Após exame, descobri que alguns ficheiros de registo no /var/log cresceram até serem muito grandes. Para ser específico, l s-lSh /var/log dá,

Como podemos ver, os dois primeiros são os ofensores. Estou ligeiramente surpreendido com a razão pela qual ficheiros tão grandes não foram rodados.

Então, o que devo fazer? Simplesmente apagar estes ficheiros e depois reiniciar? Ou dar alguns passos mais prudentes?

Estou a utilizar o Ubuntu 14.04.

ACTUALIZAÇÃO 1

Para começar, o sistema tem apenas vários meses de existência. Tive de instalar o sistema a partir do zero alguns meses atrás, após uma falha do disco rígido.

Agora, como aconselhado nesta resposta, primeiro verifiquei os ficheiros de registo ofensivos usando a cauda, sem surpresa. Depois, para uma inspecção mais profunda, executei este guião a partir da mesma resposta.

O processo demorou várias horas. A saída estava na linha de,

( /dev/sda3 é o meu directório pessoal. Como podemos encontrar,

Porque é que um processo vai querer escrever para além do limite está na realidade fora do âmbito da minha compreensão. Talvez eu queira fazer uma pergunta diferente neste fórum se isto continuar mesmo depois de uma actualização do sistema).

Então, a partir desta resposta (talvez queira verificar isto para uma compreensão mais profunda), eu executei,

Agora, estes ficheiros têm tamanhos zero. O sistema está a funcionar bem antes e depois de um reinício.

Vou observar estes ficheiros (juntamente com outros) nos próximos dias e apresentarei um relatório caso eles se comportem

Se não enraizar, será necessário sudo . Extraído de outra resposta no AU.

ANTES DE O FAZER. Faça uma cauda e verifique se existe uma razão para que sejam tão grandes. A menos que este sistema tenha vários anos, não deverá haver qualquer razão para isso e resolver o problema é melhor do que deixar isto continuar.

Tanto o kern. log como o syslog não devem normalmente ser assim tão grandes. Mas como eu disse: se este sistema estiver a funcionar durante anos e anos pode ser normal e os ficheiros só precisam de ser limpos.

E para evitar que se torne tão grande no futuro: setup logrotate . É bastante simples e irá comprimir o ficheiro de log quando este se tornar maior do que o tamanho a que o definiu.

1 outra coisa: se não quiser apagar o conteúdo, pode comprimir os ficheiros por tarring ou gzipping. Isso fará com que acabe com ficheiros provavelmente 10% do que eles são agora. Isto é, se ainda houver espaço no disco para o fazer.

Este artigo irá explicar como visualizar vários ficheiros de registo espalhados por todo o sistema de ficheiros Linux. Os ficheiros de registo são úteis para descobrir anomalias do sistema e podem ajudar no desenvolvimento de correcções para elas. Todos os comandos listados abaixo são testados na versão Ubuntu 20.04 LTS, mas devem funcionar também em outras distribuições Linux. Caso não consiga encontrar certos ficheiros de registo, pode usar o comando “Locate”, que pode ser instalado no seu sistema através do gestor de pacotes.

Registos do GNOME

O GNOME Logs é um visualizador gráfico de log enviados por defeito na maioria das distribuições Linux baseadas no GNOME Shell. Ele mostra todos os logs gerados para revistas do sistema. Systemd gere todos os serviços em execução no seu sistema e é responsável por iniciar, parar e monitorizar vários serviços que são lançados no arranque. Os registos do GNOME categorizam ordenadamente os registos em vários cabeçalhos e pode exportar estes registos para ficheiros de texto. Também lhe permite pesquisar e refinar mensagens de registo usando vários filtros.

Para instalar os registos do GNOME no Ubuntu, execute o comando abaixo:

Pode instalar os registos do GNOME noutras distribuições Linux, procurando por ele no gestor de pacotes enviados com a sua distribuição. Alternativamente, pode compilá-lo a partir do código fonte.

Logs do Kernel do Linux

Para ver os registos do kernel no terminal, executar o comando abaixo:

Pode também abrir o ficheiro de registo em qualquer editor de texto à sua escolha. A imagem acima mostra o uso do comando “tail” após o símbolo do tubo. Assegura que apenas as últimas linhas são mostradas como saída (neste caso, duas linhas).

Para visualizar os registos do kernel para arranque anterior, execute o comando abaixo:

Registos X11

Os registos para o servidor de visualização X11 Xorg podem ser encontrados em dois locais, dependendo da sua distribuição Linux. Os registos podem ser localizados nos directórios “/var/log/” ou “$HOME/.local/share/xorg/”. Pode encontrar a localização correcta dos ficheiros de registo do Xorg executando o comando abaixo:

A parte “0” no nome do ficheiro denota o número de identificação para o monitor ligado. Se tiver apenas um ecrã ligado ao seu sistema, o nome do ficheiro deve ser “Xorg.0.log”. No caso de configurações de vários monitores, serão registados vários ficheiros de registo,

Dmesg imprime mensagens de registo do kernel ou “ring buffer” do kernel do Linux. É utilizado para examinar e depurar toda a saída gerada pelo kernel, especialmente mensagens relacionadas com hardware ligado e os seus drivers.

Execute os seguintes comandos para visualizar o log do dmesg:

Pode verificar todos os argumentos de linha de comando para dmesg executando o seguinte comando num terminal:

Mensagens de arranque

Para ver o registo de mensagens de arranque, executar o comando abaixo:

Para ver os registos para o arranque anterior, executar o comando abaixo:

Registos do sistema

Os ficheiros de registo do sistema registam uma variedade de mensagens úteis para a depuração. Se não conseguir encontrar certas mensagens de registo noutros ficheiros, é provável que possam estar em ficheiros syslog.

Para ver os ficheiros syslog actuais e anteriores respectivamente, execute os seguintes comandos:

Registos de Autorização

Os registos de autorização ou simplesmente “Auth” registam as tentativas de início de sessão remoto e os pedidos de palavra-passe solicitados pelo comando sudo. Para visualizar estes registos, utilize os seguintes comandos:

Registos de início de sessão

O “Faillog” regista tentativas de login falhadas enquanto o “Lastlog” mostra informação sobre o último login. Execute os seguintes comandos para ver os registos de início de sessão:

Registos de aplicações de terceiros

As aplicações de terceiros instaladas pelo utilizador não têm acesso à raiz. Caso estejam a gravar algum registo, devem estar no directório do ficheiro executável ou nos seguintes locais:

$HOME/

$HOME/.config/

$HOME/.local/share/

Conclusão

O exame de vários ficheiros de registo pode ajudar na depuração de problemas de congelamento e de crash do sistema, especialmente quando o hardware novo e não suportado está presente no PC. Estes ficheiros de registo são também úteis para descobrir violações de segurança ou falhas de segurança, caso existam. Se estiver a receber um comportamento inesperado de software instalado no seu sistema ou reinicializações e falhas frequentes, a primeira coisa que deve fazer é examinar vários ficheiros de registo do sistema.

Sobre o autor

Nitesh Kumar

Sou um programador de software freelancer e redactor de conteúdos que adora Linux, software de código aberto e a comunidade de software livre.

Ao entrar na minha máquina Ubuntu, recebo um aviso de que estou a ficar sem espaço em disco. Rastreando, descubro que são os syslogs, especialmente o(s) kern. log(s) que estão a comer o meu disco de 1TB.

  • A partir do snippet acima, pode facilmente descobrir que kern. log e kern. log.1 estão a comer 80% do meu disco de 1TB. Posso obter o espaço apagando os ficheiros, mas penso que não vai resolver o problema.
  • Alguém tem uma ideia sobre qual poderá ser o problema? Eu vi que se consegue obter o nível de registo:
  • 3 Respostas 3

Já verificou o conteúdo desses ficheiros? É óbvio que algo se passa com o seu servidor, fazendo com que os eventos sejam gerados. Resolva qualquer problema que esteja a causar isso, e os seus registos devem voltar ao seu tamanho normal.

Para resolver temporariamente o problema, escreva

Tem de ser utilizador root para isto: introduza sudo su , a sua palavra-passe, e depois os comandos acima

Esta é uma pergunta antiga, mas nenhuma das duas respostas anteriores é uma boa solução:

A resposta aceite não explica porque é que o problema do disco desaparece se resolver o problema do sistema subjacente (a resposta é logrotate ), mais o seu sistema pode continuar a escrever nos registos e a encher o disco antes mesmo de conseguir resolver o problema subjacente.

A outra resposta remove e desactiva completamente os registos, o que não é uma boa abordagem, uma vez que ignora o problema subjacente. Além disso, provavelmente irá querer esses ficheiros de registo mais tarde quando estiver a descobrir outros problemas do sistema – desactivar o syslog torna mais difícil encontrar problemas futuros!

Em vez disso, aqui está um método mais seguro que lhe permite manter os ficheiros de registo enquanto recupera espaço em disco, ao mesmo tempo que impede os ficheiros de registo de fazer isto novamente.

). Pode ser necessário ser utilizador root para isto, neste caso introduza sudo su , a sua palavra-passe, e depois o comando acima).

3 Respostas 3

Depois, pode forçar os logs a rodar e apagar automaticamente se atingirem um determinado tamanho, utilizando o logrotate . Neste caso, pode editar a configuração com sudo nano /etc/logrotate. d/rsyslog e adicionar uma linha:

Isto forçará o seu syslog a “rodar” (ou seja, criar um novo ficheiro de log e arquivar o ficheiro de log anterior) após 1 dia ou quando o ficheiro se tornar de 1GB, o que ocorrer primeiro. Note que rodar 7 significa que o seu sistema manterá apenas 7 cópias de segurança totais do syslog, pelo que só poderá ocupar 7GB de espaço.

Nota: pode alterar o tamanho máximo, rodar N , e outras definições para personalizar os seus logs – use o comando logrotate man para ver mais.

Enquanto estiver a fazê-lo, pode querer adicionar a mesma configuração na segunda parte do ficheiro, que rege o comportamento de outros ficheiros de log (por exemplo kern. log para eventos do kernel, auth. log para eventos de autenticação, etc.). Esta configuração fará com que cada um destes outros ficheiros de log só leve 4GB no total..:

  • Isto permitirá que o seu sistema continue a registar eventos sem que estes encham o seu disco.
  • A fim de limpar um ficheiro de registo, alguns utilizadores simplesmente apagam o ficheiro antigo e criam um novo ficheiro de registo. Existem no entanto muitas maneiras de remover o conteúdo do ficheiro de registo sem ter de o abrir. Certifique-se de não limpar o conteúdo de um sistema ou ficheiro de configuração crítico, uma vez que isto pode levar a um colapso ou falha do sistema.

Usando stdout ou redireccionamento para Null

  1. Safely clear the logs: after looking at (or backing up) the logs to identify your system’s problem, clear them by typing > /var/log/syslog (including the >A primeira alternativa seria executar o comando :
  • logfile ou cp /dev/null logfile ou dd if=/dev/null of=logfile
  1. Onde no último comando, ‘se’ refere-se ao ficheiro de entrada enquanto ‘de’ se refere ao ficheiro de saída.
  • O ficheiro /dev/null device é um ficheiro bastante especial que remove qualquer fluxo de entrada que tenha sido redireccionado para ele.
  • Usando os comandos true e tee
  1. true | tee logfile

Em geral, ao escrever :

a_task | te e-a logfile

Colocará a saída em logfile e em stdout.

Usando o comando echo

logfile or cat /dev/null >O comando echo pode ser utilizado com uma cadeia vazia e redireccionado para o ficheiro como se segue:

ficheiro de registo

Uma cadeia vazia não deve ser confundida com nula, uma vez que uma cadeia é um objecto sem atributos ou parâmetros dentro dela. Para aqueles que se desenvolvem em C++ ou Java, já sabem que Nulo significa que um objecto não existe.

Quando se executa o comando echo acima, o ficheiro conterá uma linha vazia. A fim de redireccionar uma saída nula para o ficheiro, pode confiar no comutado r-n, que comanda o eco para não emitir uma nova linha de trajectos.

ficheiro de registo

Como esvaziar um ficheiro em linux utilizando o truncado

Outra forma seria utilizar :

truncad o-size 0 logfile [linux clear log file]

O comando truncado encolhe ou estende o tamanho de um ficheiro a um tamanho desejado. Pode ser utilizado com o comand o-s para indicar o tamanho do ficheiro. Assim, para esvaziar um conteúdo de ficheiro, pode especificar um tamanho de 0 (zero), como mostrado no comando acima.

Para o executar para vários ficheiros, pode proceder da seguinte forma :

echo “” > logfile or echo >truncad o-s 0 logfile1 logfile2 … [ficheiro de log linux vazio].

Usando o logrotate

Dado o facto de os ficheiros de registo poderem ser úteis, poderia arquivar uma cópia comprimindo-a e depois guardando-a. Neste caso, poderia contar com o logrotate, que pode realizá-lo facilmente. Para mais informações sobre o logrotate, consulte este link.

echo – n “” >truncad o-s 0 logfile1 logfile2 … [ficheiro de log linux vazio].

Pode também utilizar um laço :

para f em logfile1 logfile2 … ; fazer

# seleccione o comando desejado para esvaziar o ficheiro

Conclusão

Isso seria tudo por agora, pessoal. Neste artigo fornecemos poucos métodos para ajudar a limpar ou esvaziar um ficheiro de registo (ou qualquer outro ficheiro) usando ferramentas simples de linha de comando e utilitários de redireccionamento de shell.

Se gostar do conteúdo, agradecemos o seu apoio, comprando-nos um café. Muito obrigado pela sua visita e pelo seu apoio.

“Mesmo que só esteja a correr a sua própria caixa Linux em casa, mais cedo ou mais tarde enfrentará a tarefa de ter de resolver alguns problemas estranhos (PPP deixou de funcionar, X já não está a começar, e assim por diante), onde a única dica são algumas mensagens deixadas num ficheiro de registo. Para se preparar para isto, deve começar a espreitar os ficheiros de registo agora mesmo que tudo esteja a funcionar correctamente (ou, pelo menos, é o que pensa…)”.

“Ficheiros de registo são apenas ficheiros de texto simples contendo uma mensagem por linha. Para ver as mensagens dentro de qualquer um deles, tudo o que tem de fazer é usar uma das muitas ferramentas disponíveis no Linux que gerem ficheiros de texto: um simples cat /var/log/messages seria suficiente para imprimir todas as mensagens no ecrã, mas se o tentar verá muitas páginas de texto a fluir sobre o ecrã provavelmente demasiado depressa para ler. Os ficheiros de registo são sempre muito grandes, pois mantêm as mensagens acumuladas desde a primeira vez que iniciou o seu sistema Linux. No futuro aprenderemos a manter o seu tamanho limitado, mas de momento basta notar que não pode simplesmente “gatá-los”, e que é provavelmente uma má ideia tentar abri-los com um editor de texto: em primeiro lugar porque pode facilmente ficar sem memória, e em segundo lugar porque não se espera que altere o conteúdo de um ficheiro de registo. Uma melhor maneira de ver os ficheiros de registo é utilizar um pager, como mais ou menos, ou utilizar o grep se estiver à procura de mensagens específicas. Vamos tentar com menos /var/log/messages primeiro”.

“…todas as mensagens que vão para o ficheiro /var/log/messages não são nada de particularmente grave ou urgente. Uma mensagem interessante é a chamada ‘MARK’, que é emitida periodicamente (a cada 20 minutos por defeito) apenas para dizer que o sistema ainda está vivo. … Outra utilização típica da mensagem MARK é para ajudar num diagnóstico post-mortem, dando ao administrador do sistema uma dica sobre a última vez que a máquina estava a funcionar antes de uma (improvável) queda. … Os outros dois ficheiros de registo padrão, /var/log/debug e /var/log/syslog, contêm mensagens mais importantes, tais como informação de debug e avisos de erro”.

Como é que posso ver o conteúdo de um ficheiro de registo em tempo real no Linux? Há muitos utilitários por aí que podem ajudar um utilizador a produzir o conteúdo de um ficheiro enquanto o ficheiro está a ser alterado ou continuamente actualizado. Alguns dos utilitários mais conhecidos e utilizados para exibir o conteúdo de um ficheiro em tempo real no Linux é o comando tail (gerir ficheiros eficazmente).

1. Comando de cauda – Monitorizar Registos em Tempo Real

Como dito, o comando de cauda é a solução mais comum para exibir um ficheiro de registo em tempo real. No entanto, o comando para exibir o ficheiro tem duas versões, como ilustrado nos exemplos abaixo.

No primeiro exemplo, o comando tail precisa do argument o-f para seguir o conteúdo de um ficheiro.

Monitorizar os registos Apache em tempo real

A segunda versão do comando é de facto um comando em si: tailf . Não precisará de usar o interrupto r-f porque o comando está incorporado com o argument o-f.

Monitorização de Registos Apache em Tempo Real

Normalmente, os ficheiros de registo são rodados frequentemente num servidor Linux pelo utilitário logrotate. Para ver os ficheiros de registo que são rodados numa base diária, pode usar a bandeir a-F para seguir o comando .

O tai l-F manterá o controlo se for criado um novo ficheiro de registo e começará a seguir o novo ficheiro em vez do ficheiro antigo.

No entanto, por defeito, o comando tai l-F mostrará as últimas 10 linhas de um ficheiro. Por exemplo, se quiser ver em tempo real apenas as duas últimas linhas do ficheiro de registo, utilize o ficheir o-n combinado com a bandeir a-f, como mostra o exemplo abaixo.

Ver as duas últimas linhas do ficheiro de registo

2. Comando Multitail – Monitorizar múltiplos ficheiros de registo em tempo real

Outro comando interessante para exibir ficheiros de registo em tempo real é o comando multitail. O nome do comando implica que o utilitário multitail pode monitorizar e manter o registo de múltiplos ficheiros em tempo real. O multitail também lhe permite navegar para trás e para a frente no ficheiro monitorizado.

Para instalar o utilitário mulitail em sistemas baseados em Debian e RedHat, emitir o comando abaixo.

Para exibir a saída de dois ficheiros de registo em simultâneo, execute o comando como mostrado no exemplo abaixo.

Registos Multitail Monitorizados

3. lnav Command – Monitorizar Múltiplos Ficheiros de Registo em Tempo Real

Outro comando interessante, semelhante ao comando multitail, é o comando lnav. O utilitário lnav também pode observar e seguir múltiplos ficheiros e exibir o seu conteúdo em tempo real.

Para instalar o utilitário lnav em distribuições Linux baseadas em Debian e RedHat, emitindo o comando abaixo.

Ver o conteúdo de dois ficheiros de registo simultaneamente, emitindo o comando como mostrado no exemplo abaixo.

lnav – Monitorização dos registos em tempo real

4. menos Comando – Mostrar a saída em tempo real dos ficheiros de registo

Finalmente, pode exibir a saída em directo de um ficheiro com menos comandos se digitar Shift+F .

Tal como no utilitário de cauda , premir Shift+F num ficheiro aberto em menos começará após o fim do ficheiro. Alternativamente, também pode começar menos com menos +F para entrar para ver o ficheiro em directo.

Registos de vigilância usando menos comando

É isso mesmo! Pode ler estes seguintes artigos sobre o controlo e gestão de registos.

Neste artigo, mostramos como observar os dados a serem anexados em ficheiros de registo em tempo real no terminal no Linux. Pode fazer quaisquer perguntas ou partilhar as suas ideias sobre este guia através do formulário de comentários abaixo.

Se aprecia o que fazemos aqui na TecMint, deve considerar:

TecMint é o site comunitário de maior crescimento e maior confiança para qualquer tipo de Artigos, Guias e Livros sobre Linux na web. Milhões de pessoas visitam TecMint! para pesquisar ou navegar nos milhares de artigos publicados disponíveis GRATUITAMENTE para todos.

Se gostar do que está a ler, por favor considere comprar-nos um café ( ou 2 ) como um sinal de apreço.

Estamos gratos pelo vosso apoio sem fim.