¿Cómo visualizo los mensajes de registro de arranques anteriores en CentOS 7?

Pregunta:

La ejecución de journalctl en un sistema CentOS 7 solo imprime los mensajes generados después del último arranque.

El comando

# journalctl --boot=-1

huellas dactilares

Failed to look up boot -1: Cannot assign requested address

y salidas con estado 1.

Comparándolo con un sistema Fedora actual, noto que CentOS 7 no tiene /var/log/journal (y journalctl no proporciona --list-boots ).

Por lo tanto, mi pregunta sobre cómo mostrar los mensajes de registro que se escribieron antes de la última fecha de inicio.

¿O quizás esta funcionalidad debe estar habilitada en CentOS 7?

(La página de manual de journalctl enumera 'systemd 208' como número de versión).

Respuesta:

tl; dr

En CentOS 7, debe habilitar el almacenamiento persistente de mensajes de registro:

# mkdir /var/log/journal
# systemd-tmpfiles --create --prefix /var/log/journal
# systemctl restart systemd-journald

De lo contrario, los mensajes de registro de diario no se conservan entre arranques.

Detalles

Si journald retiene los mensajes de registro de arranques anteriores se configura a través de /etc/systemd/journald.conf . La configuración predeterminada en CentOS 7 es:

[Journal]
Storage=auto

Donde la página del manual journald.conf explica auto como:

Uno de "volátil", "persistente", "automático" y "ninguno". Si es "volátil", los datos del registro de diario se almacenarán solo en la memoria, es decir, debajo de la jerarquía / run / log / journal (que se crea si es necesario). Si es "persistente", los datos se almacenarán preferiblemente en el disco, es decir, debajo de la jerarquía / var / log / journal (que se crea si es necesario), con un respaldo a / run / log / journal (que se crea si es necesario), durante arranque temprano y si el disco no se puede escribir. " auto " es similar a "persistente" pero el directorio / var / log / journal no se crea si es necesario, por lo que su existencia controla dónde van los datos de registro .

(enfatiza el mío)

La página del manual systemd-journald.service establece que:

De forma predeterminada, el diario almacena los datos de registro en / run / log / journal /. Dado que / run / es volátil, los datos de registro se pierden al reiniciar. Para que los datos sean persistentes, es suficiente crear / var / log / journal / donde systemd-journald almacenará los datos.

Aparentemente, el valor predeterminado se cambió en Fedora 19 (a almacenamiento permanente) y, dado que CentOS 7 se deriva de Fedora 18, todavía no es permanente allí, por defecto. La persistencia se implementa de forma predeterminada fuera de journald a través de /var/log/messages y las versiones rotadas /var/log/messages-YYYYMMDD que están escritas por rsyslogd (que se ejecuta de forma predeterminada y obtiene su entrada de journald).

Por lo tanto, para habilitar el registro persistente con journald en RHEL / CentOS 7, uno tiene que

# mkdir /var/log/journal

y luego corrige los permisos y reinicia journald, por ejemplo, a través de

# systemd-tmpfiles --create --prefix /var/log/journal
# systemctl restart systemd-journald

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım