Apr 02, 2026
Faradilla A.
10min de lectura
El comando journalctl es una herramienta potente de Linux para ver, filtrar y administrar los registros del sistema que recopila systemd. Te permite inspeccionar registros de servicios, de usuarios o del kernel, solucionar errores de arranque y monitorear la actividad del sistema en tiempo real.
En esta guía, aprenderás a usar journalctl de forma eficaz, desde la sintaxis básica y las opciones de comando hasta las técnicas avanzadas de filtrado. Te explicaremos cómo filtrar los registros por tiempo u origen, personalizar los formatos de salida de los registros, seguirlos en tiempo real y administrar el almacenamiento con rotación de registros. También encontrarás ejemplos prácticos de comandos para ayudarte a analizar problemas y mantener el rendimiento del sistema directamente desde la línea de comandos.
journalctl es una herramienta de línea de comandos de Linux que te permite ver y analizar los registros del sistema recopilados por systemd. Te sirve como la interfaz principal para consultar el journal de systemd, que almacena registros en un formato binario para acceso rápido y filtrado avanzado.
A diferencia de las herramientas tradicionales de registro que almacenan los registros en texto plano, el journal de systemd mantiene las entradas indexadas y estructuradas. Esto permite a quienes administran buscar en los registros por tiempo, servicio, prioridad o usuario de forma rápida y precisa. Como resultado, journalctl es ahora el método estándar para monitorear, solucionar problemas y auditar sistemas Linux que usan systemd.
La sintaxis básica del comando journalctl es:
journalctl [OPCIONES] [FILTROS]
Para ver todos los registros, ejecuta:
journalctl
Este comando te muestra todo el registro del sistema desde la entrada más antigua hasta la más reciente:

De forma predeterminada, la paginación está habilitada. Puedes desplazarte por los registros con las teclas de flecha arriba y abajo. Para salir de la vista de registros, presiona q.
Para desactivar la paginación y mostrar toda la salida directamente en la terminal, agrega la opción –no-pager:
journalctl --no-pager
Esta opción te permite ver todos los registros a la vez. Ten en cuenta que si tu sistema tiene muchos registros, cargar todo puede tardar un poco.
journalctl es solo uno de los muchos comandos útiles de Linux. Consulta nuestra guía completa para aprender los comandos más esenciales, qué hacen y cómo usarlos.
Estas son las opciones de la línea de comandos más usadas, también llamadas banderas o parámetros, para journalctl:
Algunas de estas opciones requieren argumentos adicionales para funcionar. Estos argumentos te permiten filtrar los resultados del registro o personalizar el formato de salida.
Para ver la lista completa de opciones disponibles, usa:
journalctl --help
También puedes combinar varias opciones para adaptar las consultas de registros a tus necesidades. Por ejemplo:
journalctl -u nginx.service -p err -n 50 --since=2025-06-01 --output=json-pretty
Este comando muestra los últimos 50 mensajes de error de la unidad nginx.service a partir del 1 de junio de 2025 en un formato JSON legible.
Puedes usar journalctl para filtrar registros por tiempo y origen, personalizar el formato de salida, seguir y monitorear registros en tiempo real y administrar los datos de registro de forma eficiente.
En las siguientes secciones, te mostraremos cómo usar el comando journalctl para cada una de estas tareas.
Para filtrar los registros por fecha y hora, usa journalctl con las opciones -b –list-boots –since o –until. Así funciona cada uno:
Arranque actual
Puedes ver los registros del arranque actual al agregar la opción -b:
journalctl -b
Usa este comando para solucionar problemas que ocurren justo después de un inicio limpio o para seguir la actividad del sistema desde el último reinicio.

Botas anteriores
Para ver los registros de un arranque anterior, agrega la opción -b con un desplazamiento. Por ejemplo, usa -b -1 para ver los registros del arranque anterior.
journalctl -b -1
Este comando te ayuda a hacer seguimiento de errores y de actividad inusual que ocurrieron después del último reinicio.
Mientras tanto, para ver todas las sesiones de arranque anteriores, usa:
journalctl --list-boots
Muestra cada sesión de arranque junto con su fecha y hora, para que puedas elegir fácilmente cuál investigar.

Rangos de tiempo
Si quieres filtrar registros en un intervalo de tiempo específico, combina –since y –until en tu comando journalctl. Por ejemplo:
journalctl --since=2025-06-18 --until=2025-06-19
Este comando muestra los registros entre el 18 y el 19 de junio de 2025.

También puedes usar tiempo relativo, como:
journalctl --since="1 hour ago"
Usa estos filtros de tiempo para investigar problemas que ocurrieron durante un periodo específico, por ejemplo después de una actualización del sistema o durante una ventana de mantenimiento.
journalctl puede filtrar los registros por servicios específicos, usuarios o el kernel. Para hacer esto, usa las opciones -u, _UID, _GID, _PID o -k.
Por servicio o unidad
Para ver los registros de una unidad específica de systemd, ejecuta journalctl con la opción -u. Aquí tienes un ejemplo de cómo filtrar registros del servicio NGINX:
journalctl -u nginx.service
Usa este comando para diagnosticar errores, problemas de rendimiento o comportamiento inesperado en un servicio específico.

Si no sabes cómo se llama el servicio, puedes listar los servicios en Linux con el comando systemctl list-units --type=service.
Por ID de usuario, ID de grupo o PID
Para filtrar los registros por usuario, grupo o identificador de proceso (PID), usa las opciones _UID, _GID o _PID.
Por ejemplo, para ver los registros de un ID de usuario específico, ejecuta el siguiente comando journalctl:
journalctl _UID=0
Muestra registros relacionados con el ID de usuario 0.
Filtrar los registros por ID de usuario es clave para solucionar problemas relacionados con la actividad específica de un usuario o con los permisos.
Solo registros del kernel
Puedes usar journalctl para ver los registros relacionados con el kernel si agregas la opción -k:
journalctl -k
Este comando muestra los registros del kernel, incluidos los eventos de hardware, los mensajes de los controladores y los fallos críticos del kernel.

Úsalo cuando soluciones problemas del sistema de bajo nivel, como fallas de hardware o bloqueos del sistema.
journalctl ofrece varias opciones, como -o y –no-pager, para personalizar cómo muestra los registros. Así puedes modificar la salida de los registros para adaptarla a tus necesidades:
Formatos de salida comunes
Usa la opción -o para elegir entre diferentes formatos de salida. Aquí tienes algunas de las más utilizadas:
Imprimir mensajes completos
Para mostrar entradas de registro completas, sin truncar, ejecuta:
journalctl -o verbose
Este comando te muestra el contenido completo del mensaje, lo que puede ser útil al solucionar problemas, ya que la vista predeterminada omite detalles importantes.

Desactivar la paginación
Como mencionamos antes, puedes desactivar la paginación con la opción –no-pager:
journalctl --no-pager
Esta opción es útil cuando procesas registros con otras herramientas o rediriges la salida a un archivo, porque garantiza un flujo de datos fluido y sin interrupciones.
Por ejemplo, para redirigir la salida a un archivo, usa el operador >:
journalctl --no-pager > output.log
Este comando de journalctl guarda toda la salida en un archivo llamado output.log.
Personaliza la salida para automatización
Personalizar el formato de salida es especialmente útil cuando integras journalctl en scripts o herramientas de automatización.
Por ejemplo, puedes formatear los registros en JSON y canalizarlos al comando grep para extraer entradas específicas:
journalctl -o json | grep "error"
Este comando genera registros en formato JSON y luego filtra las entradas que contienen la palabra “error”.

Puedes usar journalctl para seguir y monitorear los registros en tiempo real. Esto es especialmente útil cuando necesitas monitorear un servicio o seguir la actividad del sistema en tiempo real.
A continuación, algunas acciones comunes:
Seguir el registro
Para ver las entradas de registro más recientes, usa la opción -n seguida del número de líneas que quieres mostrar. Por ejemplo:
journalctl -n 50
Este comando muestra las últimas 50 entradas del registro. Te sirve para ver rápidamente la actividad reciente del sistema sin esperar nuevas entradas.

Sigue las entradas del registro
Si quieres que journalctl muestre de forma continua las nuevas entradas de registro a medida que aparecen, usa la opción -f:
journalctl -f
Para hacer que journalctl deje de mostrar nuevas entradas, presiona Ctrl + C.
Funciona como el comando tail -f y muestra registros en tiempo real a medida que el sistema o los servicios los generan.
Monitoreo en tiempo real de servicios específicos
Puedes combinar -f con filtros para monitorear servicios específicos. Por ejemplo, para seguir en tiempo real los registros del servicio NGINX, ejecuta:
journalctl -u nginx.service -f
Usa este comando para monitorear servicios como NGINX o SSH y seguir el rendimiento en tiempo real, los mensajes de error u otros eventos importantes a medida que ocurren.

journalctl ofrece varias formas de gestionar el almacenamiento de registros, rotar los registros y controlar cuánto tiempo se conservan.
Estas prácticas ayudan a reducir el uso de espacio en disco y a mantener tu sistema eficiente, sobre todo porque los registros pueden consumir mucho espacio con rapidez.
Rotación de registros y control de espacio
journalctl gestiona automáticamente la rotación de registros, pero puedes configurar manualmente límites para controlar el uso de almacenamiento y la cantidad de archivos de registro que se conservan.
Para hacerlo, abre el archivo journald.conf con el editor de texto nano:
sudo nano /etc/systemd/journald.conf
Usa parámetros como SystemMaxUse, RuntimeMaxUse y MaxFileSec para establecer límites al tamaño de los archivos de registro y al tiempo de retención. Por ejemplo, para limitar los registros a un gigabyte, descomenta la línea y agrega un valor como:
SystemMaxUse=1G

Después de editar el archivo, guarda y sal presionando Ctrl + X → Y → Enter.
Registros persistentes
De forma predeterminada, journalctl guarda los registros de manera persistente, así que se conservan tras reiniciar el sistema. Para confirmar o cambiar este comportamiento, abre el mismo archivo journald.conf.
Luego, busca la opción de Almacenamiento. Si está configurado en auto, systemd escribe los registros en el disco si existe el directorio de almacenamiento persistente (/var/log/journal/).
Para forzar el registro persistente, descomenta la línea y establece el valor en:
Storage=persistent
Si quieres guardar los registros solo en memoria durante el inicio actual del sistema, usa:
Storage=volatile
Elimina manualmente los registros
Si los registros superan los límites que configuraste o quieres liberar espacio manualmente, usa las opciones –vacuum:
journalctl --vacuum-size=1G
journalctl --vacuum-time=1week
journalctl --vacuum-files=5
Además, para verificar cuánto espacio están usando actualmente los registros del journal, ejecuta:
journalctl --disk-usage

A continuación encontrarás algunos ejemplos reales de comandos journalctl para ayudarte a solucionar problemas comunes del sistema y entender mejor cómo aplicar diferentes filtros y opciones.
Soluciona una falla del servicio
journalctl -u nginx.service --since="2025-06-01 01:00:00" --until="2025-06-01 02:00:00"
Este comando filtra los registros de la unidad nginx.service el 1 de junio de 2025 entre la 1:00 a.m. y las 2:00 a.m. Úsalo para identificar cuándo y por qué ocurrió el problema.
Monitoreo en tiempo real de registros ante ataques de fuerza bruta contra SSH
journalctl -u ssh.service -f | grep "Failed password"
Combina journalctl -f con grep para monitorear en tiempo real los registros de SSH y filtrar las entradas que contienen “Failed password“.
Revisa los registros después de un fallo del sistema para detectar problemas de hardware.
journalctl -k --since=2025-06-01 --until=2025-06-02
Este comando muestra los registros del kernel entre el 1 y el 2 de junio de 2025. Úsalo para buscar fallas de hardware o pánicos del kernel alrededor del momento del bloqueo.
Exporta registros para análisis forense
journalctl --since=2025-06-01 --until=2025-06-10 > system_logs_2025-06-01_to_06-10.log
Exporta los registros del 1 al 10 de junio de 2025 en un archivo llamado system_logs_2025-06-01_to_06-10.log para que luego puedas analizarlos o auditarlos.
Lleva un registro de los errores del sistema durante un proceso de actualización
journalctl --since="2025-06-01 01:00:00" --until="2025-06-01 03:00:00" -p err
Este comando filtra los registros entre la 1:00 a. m. y las 3:00 a. m. del 1 de junio de 2025 y muestra solo las entradas de nivel de error (-p err) para ayudarte a diagnosticar qué salió mal.
journalctl es una herramienta de línea de comandos fundamental para gestionar los registros del sistema en Linux, con filtrado detallado, monitoreo en tiempo real y formatos de salida personalizables. Ya sea que estés diagnosticando un servicio que falló o rastreando eventos a nivel de kernel, saber usar sus opciones de forma eficaz te ayuda a actuar más rápido y con mayor precisión.
Para quienes usan un VPS, dominar journalctl te da información directa sobre el comportamiento de tu servidor y facilita resolver problemas, optimizar el rendimiento y mantener la disponibilidad. Como próximo paso, explora herramientas relacionadas como systemctl para administrar servicios o revisa nuestros tutoriales sobre rotación de registros y buenas prácticas de seguridad en Linux para ampliar tus conocimientos.
Todo el contenido de los tutoriales en este sitio web está sujeto a los rigurosos estándares y valores editoriales de Hostinger.