Durante muchos años, los registros del kernel y del sistema fueron manejados por una utilidad llamada syslogd. La mayoría de los sistemas operativos basados en Linux han migrado a systemd, que viene con un demonio de registro diferente, journald. Para interactuar con estos registros, utilice la utilidad journalctl.
Dar permiso de usuario para leer registros del sistema
Solo los usuarios que pertenecen a los grupos «adm» o «systemd-journal» pueden leer los registros de systemd. Las distribuciones como Ubuntu ya lo agregan como usuario al grupo adm.
Abra un emulador de terminal y escriba el siguiente comando:
Si ve «adm» o «systemd-journal» en el resultado, puede omitir el resto de los pasos de esta sección. De lo contrario, agréguese al grupo «adm».
Tendría que reiniciar su sesión de inicio de sesión para que este cambio surta efecto (cerrar sesión e iniciar sesión). Si no puede hacerlo por varios motivos, use este comando para iniciar sesión en el nuevo grupo sin reiniciar la sesión gráfica.
No cierres la ventana de la terminal. Ahora es parte del grupo adm, en la sesión de terminal, pero no en su sesión gráfica. Si abre una nueva terminal en este momento, su usuario ya no iniciará sesión en el grupo adm.
Comprobar si el diario es persistente
Los registros de systemd pueden ser persistentes o volátiles. En Ubuntu y otras distribuciones, son persistentes de forma predeterminada. En Debian 9 son volátiles, lo que significa que se mantienen solo en la memoria (no en el disco) y desaparecen al apagar o reiniciar. Ingrese el siguiente comando.
Si hay varias entradas aquí, no hay nada más que deba hacer. Significa que los diarios se mantienen en el disco (persistentes). Si solo obtiene una entrada, entonces el diario es volátil. Cámbielo a persistente.
sudo sed -i '/Storage/ c\Storage=persistent' /etc/systemd/journald.conf
Seleccione qué diario de entrada de arranque ver
Por lo general, querrá ver el registro del arranque actual. En raras ocasiones, querrá ver el arranque anterior, cuando algo salió mal, por ejemplo, después de un bloqueo del sistema.
Para ver el registro del arranque actual:
Para el arranque anterior, use «-1» en lugar de «0», y para hace dos arranques, «-2» y así sucesivamente.
Navegar y buscar a través del diario del sistema
Después de abrir el registro con journalctl, puede navegar por el texto con las teclas de flecha y las teclas RE PÁG o AV PÁG. Otras teclas útiles son:
- > para ir al final de la salida.
- < para ir al principio de la salida.
- / para buscar una cadena de texto. Después de presionar la tecla de barra inclinada, ingrese la cadena que desea buscar, seguida de Enter. La cadena distingue entre mayúsculas y minúsculas, por lo que «red» no encontrará cadenas «Red». La búsqueda comienza desde su posición de vista actual, hacia abajo. Para buscar hacia arriba, utilice ?.
- n encontrar la siguiente coincidencia en una búsqueda actual. N encuentra el anterior.
- q sale de la utilidad journalctl.
Filtrar entradas de registro por prioridad
A veces solo desea buscar errores, ignorando avisos y mensajes de estado. Cada entrada en un registro tiene una prioridad: emergencia, alerta, crítico, error, advertencia, aviso, información. Estos se enumeran en orden de importancia, reservando la emergencia para los peores escenarios (sistema inutilizable). Los mensajes de información son solo texto informativo, informando sobre el estado de los programas que funcionan normalmente.
Para mostrar solo los mensajes de error del inicio actual, ingrese:
Si desea ver los errores de todas las botas, simplemente elimine el parámetro «-b»:
Estos son los códigos que puedes pasar al parámetro “-p”:
- alerta
- crítico
- depurar
- emergente
- errar
- información
- aviso
- advertencia
Filtrar entradas de registro por ruta para procesar archivo ejecutable o unidad Systemd
Algunos procesos son iniciados y administrados por las llamadas unidades systemd. Para ver todos los registros relacionados con la unidad de servicio cron, ingrese:
journalctl -u cron.service
Puedes ver que unidades tienes disponibles con:
systemctl list-dependencies
Puede navegar por la lista con las teclas de flecha arriba y abajo. Presione q para salir.
Si prefiere usar la ruta al archivo ejecutable del programa (binario), simplemente pase su ruta completa como argumento.
journalctl /usr/sbin/cron
No olvide que también puede filtrar por entrada de arranque actual para deshacerse de los mensajes innecesarios.
journalctl -b 0 /usr/sbin/cron
Conclusión
Journalctl tiene como objetivo facilitar la búsqueda de lo que está buscando. Si desea conocer parámetros más avanzados que puede utilizar, consulte el página del manual del comando journalctl.