Conserve los registros del diario del sistema con almacenamiento persistente

En esta guía, estudiaremos cómo conservar los registros de Systemd Journals en el servidor. Cuando los problemas continúan, es útil mantener los registros del sistema para solucionar los problemas de su servicio. Al final de este artículo, debería poder configurar el registro del sistema para conservar los registros de eventos cuando se reinicie el servidor.

Conceptos básicos del diario del sistema

De forma predeterminada, Systemd almacena los registros del sistema/ Ejecutar / iniciar sesión / noticiasTabla de contenido. Como comentamos en Comprensión de la jerarquía del sistema de archivos de Linux, todo lo que esté en el directorio /run se borrará y el contenido se recreará al reiniciar. Esto significa que el registro se borrará cuando se reinicie el sistema.

podemos ajustarSistema diarioServicios para/etc/systemd/journald.conf Archivo para que el registro persista después de reiniciar. Abra el archivo para ver su contenido:

$ sudo vim /etc/systemd/journald.conf

Estas son opciones comunes que se pueden configurar; la mayoría de las opciones en la mayoría de los sistemas están comentadas para que pueda ajustarlas en consecuencia.

[Journal]
#Storage=auto
#Compress=yes
#Seal=yes
#SplitMode=uid
#SyncIntervalSec=5m
#RateLimitInterval=30s
#RateLimitBurst=1000
#SystemMaxUse=
#SystemKeepFree=
#SystemMaxFileSize=
#RuntimeMaxUse=
#RuntimeKeepFree=
#RuntimeMaxFileSize=
#MaxRetentionSec=
#MaxFileSec=1month
#ForwardToSyslog=yes
#ForwardToKMsg=no
#ForwardToConsole=no
#ForwardToWall=yes
#TTYPath=/dev/console
#MaxLevelStore=debug
#MaxLevelSyslog=debug
#MaxLevelKMsg=notice
#MaxLevelConsole=info
#MaxLevelWall=emerg
#LineMax=48K

Configurar el diario permanente del sistema

Para configurar el servicio systemd-journald para mantener los registros del sistema de forma permanente después de un reinicio, debe configurar el Almacenamiento como persistente:

Otros valores que se pueden establecer para el parámetro Almacenamiento son:

  • persistent: Almacenar diario en/var/log/journalEl directorio todavía existe después del reinicio. Creación de directorio (si no existe)
  • volatile: Almacenar diarios en formato volátil/run/log/journalTabla de contenido. Esto no hará que el sistema se reinicie.
  • auto: Rsyslog determinará si se utiliza almacenamiento persistente o almacenamiento volátil. En caso/var/log/journalSi el directorio existe, rsyslog usa almacenamiento persistente; de ​​lo contrario, usa almacenamiento volátil.

Para el almacenamiento permanente del diario, configúrelo en:

[Journal]
Storage=persistent

Después de realizar los cambios, reinicie el servicio systemd-journald para que los cambios de configuración surtan efecto.

sudo systemctl restart systemd-journald

Confirme que el servicio esté reiniciado y ejecutándose:

$ systemctl status systemd-journald
? systemd-journald.service - Journal Service
   Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service; static; vendor preset: disabled)
   Active: active (running) since Sun 2020-02-09 10:59:36 UTC; 8s ago
     Docs: man:systemd-journald.service(8)
           man:journald.conf(5)
 Main PID: 5299 (systemd-journal)
   Status: "Processing requests..."
   CGroup: /system.slice/systemd-journald.service
           ??5299 /usr/lib/systemd/systemd-journald

Feb 09 10:59:36 cent7.novalocal systemd-journal[5299]: Permanent journal is using 8.0M (max allowed 1.9G, trying to leave 2.9G free of 16.9G a?it 1.9G).
Feb 09 10:59:36 cent7.novalocal systemd-journal[5299]: Permanent journal is using 8.0M (max allowed 1.9G, trying to leave 2.9G free of 16.9G a?it 1.9G).
Feb 09 10:59:36 cent7.novalocal systemd-journal[5299]: Time spent on flushing to /var is 68.506ms for 7962 entries.
Feb 09 10:59:36 cent7.novalocal systemd-journal[5299]: Journal started
Hint: Some lines were ellipsized, use -l to show in full.

Se debe crear el directorio /var/log/journal.

$ ls /var/log/journal
65113b1a0d2f6087d515e6a8cd0ee7ef

Subdirectorios/var/log/journalCaracteres hexadecimales en nombres largos y*.journalarchivo.

$ ls /var/log/journal/65113b1a0d2f6087d515e6a8cd0ee7ef/
system.journal

de*.journalUn archivo es un archivo binario que almacena entradas de diario estructuradas e indexadas.

Ajustar el uso máximo de almacenamiento del diario

Puede establecer el tamaño máximo del registro permanente descomentando y cambiando lo siguiente:

SystemMaxUse=500M

El límite de tamaño predeterminado está establecido en el 10% del tamaño del sistema de archivos base, pero el límite superior es 4 GiB.

sudo systemctl restart systemd-journald

Comprender la jerarquía del sistema de archivos de Linux

Cómo crear enlaces duros y blandos (simbólicos) en Linux

Artículos Relacionados