在使用 Ubuntu 系统进行开发或运维时,经常会遇到服务异常、启动失败等问题。这时,查看服务日志就成为排查问题的关键步骤。本文将手把手教你如何在 Ubuntu 中高效查看服务日志,即使你是 Linux 新手,也能轻松上手!
什么是 Ubuntu 服务日志?
Ubuntu 自 16.04 起默认使用 systemd 作为初始化系统,它集成了强大的日志管理工具 journald。所有系统服务、内核消息、用户操作等都会被记录下来,形成结构化的日志数据。
核心工具:journalctl 命令
要查看 Ubuntu 服务日志,最常用也最强大的命令就是 journalctl。它是 systemd 提供的日志查询工具,支持多种过滤和格式化选项。
1. 查看某个服务的日志(例如 nginx)
这里的 加上 这些时间过滤功能能帮你快速定位特定时间段的问题,避免翻阅大量无关日志。 日志级别从低到高包括: 掌握 Ubuntu服务日志查看 技巧,是每个 Linux 用户的必备技能。通过 记住几个关键词:使用 提示:如果你使用的是较老版本的 Ubuntu(如 14.04),可能仍使用 syslog,日志通常位于 sudo journalctl -u nginx.service -u 表示按 unit(服务单元)过滤,nginx.service 是服务名。你可以替换成你自己的服务,比如 apache2、mysql 或自定义服务。2. 实时跟踪日志(类似 tail -f)
sudo journalctl -u nginx.service -f -f 参数后,命令会持续输出新产生的日志,非常适合调试正在运行的服务。3. 查看最近的日志(按时间过滤)
# 查看今天的所有日志sudo journalctl --since today# 查看最近1小时的日志sudo journalctl --since "1 hour ago"# 查看某服务最近重启后的日志sudo journalctl -u myapp.service -b 4. 按优先级过滤日志
# 只显示错误(err)、警告(warning)及以上级别sudo journalctl -p err..alert debug、info、notice、warning、err、crit、alert、emerg。其他实用技巧
保存日志到文件:如果你需要把日志发给同事或存档,可以用重定向:
sudo journalctl -u nginx.service > nginx.log 查看所有启动以来的日志:使用 -b 参数(boot):
sudo journalctl -b 日志持久化:默认情况下,journald 日志存储在内存中(/run/log/journal),重启后会丢失。若想永久保存,需创建目录并重启服务:
sudo mkdir -p /var/log/journal
sudo systemctl restart systemd-journald 总结
journalctl 命令,你可以灵活地查询、过滤和跟踪系统与服务日志。无论是排查 systemd日志管理 问题,还是分析应用崩溃原因,这些方法都能大幅提高你的效率。-u 指定服务,-f 实时跟踪,--since 按时间筛选。多加练习,你很快就能熟练运用这些 Linux系统日志 工具了!/var/log/
目录下,如 /var/log/syslog
或 /var/log/nginx/error.log
。但现代 Ubuntu 推荐使用 journalctl命令 进行统一管理。
