Skip to Content
文档参考命令速查journalctl 常用命令

journalctl 常用命令

基本查看

命令说明
journalctl查看所有日志
journalctl -e跳转到日志末尾
journalctl -f实时跟踪新日志
journalctl -n 50查看最近 50 条日志
journalctl --no-pager不分页直接输出

按时间过滤

命令说明
journalctl -b本次启动以来的日志
journalctl -b -1上次启动的日志
journalctl --since "2026-03-24 10:00:00"指定起始时间
journalctl --since "2026-03-24" --until "2026-03-25"指定时间范围
journalctl --since "1 hour ago"最近 1 小时
journalctl --since "30 min ago"最近 30 分钟
journalctl --since yesterday从昨天开始
journalctl --since today从今天开始

按服务过滤

命令说明
journalctl -u nginx查看特定服务的日志
journalctl -u nginx -u php-fpm查看多个服务
journalctl -u 服务名 -f实时跟踪某服务

按优先级过滤

级别数字说明
emerg0系统不可用
alert1需立即处理
crit2严重错误
err3一般错误
warning4警告
notice5通知
info6信息
debug7调试
命令说明
journalctl -p err只看错误及以上
journalctl -p warning只看警告及以上
journalctl -p err..crit指定优先级范围

按进程/用户过滤

命令说明
journalctl _PID=1234按 PID 过滤
journalctl /usr/sbin/nginx按可执行文件路径过滤
journalctl _UID=1000按用户 ID 过滤
journalctl _COMM=sshd按进程名过滤

内核日志

命令说明
journalctl -k仅显示内核消息(类似 dmesg)
journalctl -k -b本次启动的内核日志

输出格式

命令说明
journalctl -o json-prettyJSON 格式
journalctl -o short简短格式
journalctl -o verbose详细格式(含所有字段)
journalctl -o cat仅输出消息内容
journalctl -u nginx --since today > /tmp/nginx-log.txt导出到文件

磁盘空间管理

命令说明
journalctl --disk-usage查看日志占用空间
sudo journalctl --vacuum-time=7d限制日志保留 7 天
sudo journalctl --vacuum-size=500M限制日志最大 500MB
sudo journalctl --vacuum-files=5限制日志文件数量为 5

永久配置:编辑 /etc/systemd/journald.conf,设置 SystemMaxUse=500M、SystemMaxFileSize=50M、MaxRetentionSec=1month,然后执行 sudo systemctl restart systemd-journald。

查看启动记录

命令说明
journalctl --list-boots列出所有启动记录
journalctl -b -1查看上次启动日志
journalctl -b -2查看上上次启动日志

实用组合示例

命令说明
journalctl -u ssh --since today | grep "Failed"查找今天的 SSH 登录失败
journalctl -b -p err --no-pager查看本次启动的错误
journalctl -u nginx --since "1 hour ago" --no-pager -o short-iso > /tmp/nginx.log导出某服务最近 1 小时日志
journalctl -f -u nginx -u php8.5-fpm -u mysql实时监控多个服务
Last updated on