Linux 新手:用 journalctl 快速排查服务日志
【摘要】 写给刚接触 systemd 的开发者。很多人装完服务后只会看 systemctl status,其实 journalctl 才是日常排错的主力。 为什么用 journalctlsystemd 统一收集各服务标准输出和错误输出,日志集中在 journal 里。比起翻散落的 /var/log,按服务名、时间、优先级过滤会快很多。 最常用的几条看某个服务最近日志:journalctl -u ngi...
写给刚接触 systemd 的开发者。很多人装完服务后只会看 systemctl status,其实 journalctl 才是日常排错的主力。
为什么用 journalctl
systemd 统一收集各服务标准输出和错误输出,日志集中在 journal 里。比起翻散落的 /var/log,按服务名、时间、优先级过滤会快很多。
最常用的几条
看某个服务最近日志:
journalctl -u nginx.service -n 100 --no-pager
持续跟踪(类似 tail -f):
journalctl -u nginx.service -f
只看今天、或最近一小时:
journalctl -u nginx.service --since today
journalctl -u nginx.service --since "1 hour ago"
只看错误及以上级别:
journalctl -u nginx.service -p err..alert
小技巧
- 加
-o short-iso时间更易读。 - 容器或临时机器磁盘紧时,注意 journal 体积:
journalctl --disk-usage,必要时按保留策略清理。 - 权限不够时加
sudo;生产环境查日志前先确认自己有权限,避免盲目提升权限。
小结
先 systemctl status 看是否在跑,再用 journalctl -u <服务> -n 100 看原因。把这几条记牢,Linux 服务排错会轻松很多。欢迎补充你常用的 journalctl 组合。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)