Base de Coneixements Instruccions senzilles per treballar amb el servei Profitserver
Inici Base de Coneixements Com llegir els registres de Linux i on trobar-los

Com llegir els registres de Linux i on trobar-los


Quan tingueu problemes amb el rendiment del vostre servidor, el primer que heu de fer és comprovar els registres de Linux . Al registre del sistema, podeu trobar alguns missatges de diagnòstic útils de diferents components del sistema operatiu, com ara el nucli o diversos serveis, de manera que probablement hi trobareu la causa de l'error.

Cada missatge del registre es genera com a resultat de determinats esdeveniments del sistema operatiu: des de l'usuari, autorització per a l'aturada del servei o fallada de l'aplicació. Aquests esdeveniments tenen prioritats diferents depenent de com siguin crítics. Hi ha els següents tipus d'esdeveniments a Linux:

  1. emerg - fracàs, màxima prioritat;
  2. alert - avís urgent;
  3. crit - esdeveniment crític;
  4. err - error ordinari;
  5. warn - avís ordinari;
  6. notice - notificació;
  7. info - missatge d'informació;
  8. debug - informació de depuració;

Actualment, els principals serveis de recollida de registres a Linux són rsyslog i systemd-journald . Van amb la majoria dels paquets de distribució moderns i funcionen de manera independent.

rsyslog

Els registres d'aquest servei es troben a la carpeta " /var/log/ " en forma de fitxers de text ordinaris. Els missatges de registre es col·loquen en fitxers diferents segons el tipus d'esdeveniment. Per exemple, " /var/log/auth.log " conté informació sobre l'autorització dels usuaris al sistema i " /var/log/kern.log " conté missatges del nucli. Els noms dels fitxers poden variar entre els paquets de distribució, així que fem una ullada al fitxer de configuració per tenir una idea d'on és " /etc/rsyslog.d/50-default.conf ".

Сбор логов Linux утилитой rsyslog

Aquestes regles mostren quin fitxer conté cada tipus de missatges de registre. La part esquerra mostra el tipus de missatge en el següent format " [Origen].[Prioritat] " i la part dreta mostra el nom del fitxer de registre. En escriure el tipus de missatge, es pot afegir el caràcter " * ". Significa un valor buit o " cap ", que l'elimina de la llista. Fem una ullada més detallada a les dues primeres regles.

“auth,authpriv.* /var/log/auth.log”
“*.*;auth,authpriv.none -/var/log/syslog”

La primera regla significa que tots els missatges rebuts del mecanisme d'autorització s'enregistraran al fitxer " /var/log/auth.log ". Tots els intents d'autorització (tant els reeixits com els no) es registraran en aquest fitxer. La segona regla indica que tots els missatges, excepte els relacionats amb l'autorització, s'enregistraran al fitxer " /var/log/syslog ". Aquests dos fitxers solen ser els més populars. Les regles següents defineixen la ruta per emmagatzemar els registres del nucli " kern.* " i els registres del servei de correu " mail.* ".

Els fitxers de registre es poden obrir amb l'ajuda de qualsevol editor de text, com ara less , cat , tail . Obrim el fitxer " /var/log/auth.log ".

less /var/log/auth.log
Запись в лог-файле Линукс о неудачной попытке авторизации SSH

Cada línia del fitxer és un missatge independent rebut de l'aplicació o servei. Tots els missatges, independentment de la seva font, tenen un format i consten de 5 parts. Prenem com a exemple el missatge destacat de la captura de pantalla.

  1. Marca de temps del missatge: "12 de febrer 06:18:33"
  2. Nom de l'ordinador que ha enviat el missatge: "vds"
  3. Nom de l'aplicació o servei que ha enviat el missatge: "sshd"
  4. Identificador de procés - [653]
  5. Text del missatge: "Contrasenya acceptada per a mihail del port 188.19.42.165 ssh2849 2"

Aquest va ser un exemple d'una connexió correcta a SSH.

I així és com es veu un intent d'inici de sessió sense èxit:

Читаем логи Linux

Aquest fitxer també enregistra ordres amb permisos avançats

Как правильно прочитать лог Linux

Obrim el fitxer /var/log/ syslog

Un missatge destacat a la captura de pantalla és el missatge sobre l'aturada de la interfície de xarxa.

Утилита logorotate

Per cercar informació a través de fitxers de text llargs, feu servir la utilitat grep . Podeu trobar tots els missatges rebuts del servei pptpd al fitxer " /var/log/syslog ".

grep 'pptpd' /var/log/syslog
"/etc/logrotate.d/rsyslog"

Durant el diagnòstic podeu utilitzar la utilitat tail que pot mostrar diverses últimes línies de fitxers. L'ordre " tail -f /var/log/syslog " us permetrà veure els registres d'enregistrament en temps real.

El servei rsyslog és molt flexible i potent. Es pot utilitzar per recopilar registres tant en sistemes locals com a nivell empresarial. Podeu trobar la documentació completa al lloc web oficial https://www.rsyslog.com/

Rotació de registres a Linux

L'enregistrament de registres es produeix contínuament, de manera que la mida dels fitxers creix constantment. El mecanisme de rotació garanteix l'arxivament automàtic dels registres antics i la creació de fitxers nous. Depenent de les regles, pot passar diàriament, setmanalment, mensualment o per límit de mida. A mesura que es creen registres nous, els antics es poden suprimir o enviar per correu electrònic. La rotació de registres es realitza mitjançant la utilitat logrotate . Podeu trobar la configuració principal al fitxer " /etc/logrotate.conf ". El contingut dels fitxers també es processa a la carpeta " /etc/logrotate.d/ ".

Les noves regles es poden registrar al fitxer de configuració principal. Tanmateix, és millor crear un fitxer separat a " /etc/logrotate.d/ ". Per defecte, hi ha uns quants fitxers en aquest directori.

Настраиваем ротацию логов в Линукс

Fem una ullada al fitxer " /etc/logrotate.d/rsyslog " que conté les regles de rotació per als registres del servei rsyslog.

Пример вывода всех ошибок pptpd в лог-файлах

En primer lloc, la regla hauria de contenir el camí al fitxer de registre i després anar totes les directrius entre claudàtors.

  • rotate juliol - nombre de fitxers a conservar - 7
  • diari - Creeu un fitxer nou cada dia
  • comprimir - comprimir i arxivar fitxers antics
Учимся читать логи Линукс

Podeu veure a la captura de pantalla que a la carpeta " /var/log/ " hi ha el registre principal " syslog " i 7 arxius, que corresponen a les regles del fitxer de configuració.

Podeu trobar una descripció més detallada de logrotate al manual, executant l' ordre " man logrotate ".

Recollida de registres de Linux - journald

El servei de recopilació de registres systemd-journald forma part del sistema d'inicialització systemd . Els fitxers de registre de Linux s'emmagatzemen a " /var/log/journal/ " en un format especial i es poden obrir amb l'ajuda de la utilitat journalctl . El format dels registres és exactament el mateix que a rsyslog.

L'ordre journalctl sense atributs mostra tots els registres però no és adequada per a registres més grans. Fem una ullada a algunes opcions d'aquesta utilitat.

  • journalctl -b - Mostra tots els registres des de l'últim inici
  • journalctl -S "2020-02-17 12:00" -U "2020-02-17 12:10" - Mostra el registre en un període de temps determinat
  • journalctl -u pptpd - mostrar registres d'un determinat servei
  • journalctl -k - Mostra missatges del nucli
  • journalctl -p err - mostrar missatges de certa prioritat, missatges de prioritat més alta en aquest cas (crit, alerta, emerg)
  • journalctl -f - Mostra missatges en temps real

Per a una millor flexibilitat, podeu combinar aquestes opcions. Mostrem tots els errors del servei pptpd.

journalctl -u pptpd -p err
утилита l'últim

Si especifiqueu la ruta al fitxer executable com a atribut, la utilitat mostrarà tots els missatges enviats per aquest fitxer. Mostrem tots els missatges enviats pel fitxer " /usr/bin/sudo " des de les 04:15 del 18 de febrer de 2020. De fet, mostrarà totes les ordres executades amb permisos més alts.

journalctl -S "2020-02-18 04:15" /usr/bin/sudo
командой lastb

Per saber quant espai de disc ocupen els fitxers de registre per executar l'ordre següent

journalctl --disk-usage

Per limitar el fitxer de registre a 1 Gb, executeu l'ordre següent

journalctl --vacuum-size=1G

Obertura de fitxers binaris

Ara fem una ullada a alguns fitxers especials de la carpeta " /var/log/ " on s'emmagatzemen tots els intents d'inici de sessió. Aquests fitxers són binaris i només es poden obrir amb programes especials.

/var/log/wtmp conté informació sobre els intents d'inici de sessió reeixits. Feu servir la utilitat last per obrir-lo.

утилита lastlog

/var/log/btmp - conté tots els intents d'inici de sessió fallits. Es pot obrir amb lastb amb permisos avançats. L'atribut -n defineix el nombre de línies que es mostren des del final del fitxer.

/var/log/lastlog - conté l'hora de l'última acció d'inici de sessió per a cada registre de compte. Es pot obrir amb lastlog

❮ Article anterior Editors de text Linux
Article següent ❯ Com configurar les interfícies de xarxa a CentOS

Pregunta'ns per VPS

Sempre estem preparats per respondre les vostres preguntes a qualsevol hora del dia o de la nit.