0

0

Linux怎么使用journalctl查看服务日志

P粉602998670

P粉602998670

发布时间:2025-09-12 08:38:01

|

424人浏览过

|

来源于php中文网

原创

journalctl是systemd日志管理工具,可按服务、时间、优先级过滤日志,支持实时查看、用户日志查询、持久化存储及日志大小限制,并通过权限组管理访问控制,相比传统syslog具有性能和功能优势。

linux怎么使用journalctl查看服务日志

使用

journalctl
命令,你可以轻松查看Linux系统服务日志。它能让你按时间、服务、优先级等多种方式过滤日志,快速定位问题。

journalctl 命令是systemd 日志管理器的核心工具,熟练掌握它可以极大地提升你排查问题的效率。

journalctl 的基本用法与高级技巧

journalctl
最基础的用法就是直接在终端输入它,不带任何参数。这会显示所有从系统启动开始的日志,信息量巨大,通常需要配合其他参数来过滤。

比如,要查看特定服务的日志,可以使用

-u
参数,后面跟上服务名。例如,查看
nginx
服务的日志:

journalctl -u nginx

如果想实时查看日志,类似

tail -f
的效果,可以加上
-f
参数:

journalctl -u nginx -f

这样,任何

nginx
服务产生的新的日志都会立刻显示在终端上。

有时候,你可能只关心最近一段时间的日志。

journalctl
提供了多种时间过滤选项。使用
--since
--until
参数可以指定开始和结束时间。时间格式可以很灵活,比如:

journalctl --since "2023-10-26 08:00:00" --until "2023-10-26 09:00:00"

或者更简洁地:

journalctl --since "yesterday" --until "now"

甚至可以使用相对时间:

journalctl --since "2 hours ago"

这些时间过滤选项可以组合使用,非常方便。

如何按优先级过滤 journalctl 日志?

日志信息通常会有不同的优先级,比如

debug
info
warning
error
critical
等。使用
-p
参数可以按优先级过滤日志。例如,只查看
error
及以上级别的日志:

journalctl -p err

这里

err
代表
error
级别。你也可以指定多个级别,用逗号分隔:

journalctl -p err,crit,alert,emerg

这些级别从高到低依次是

emerg
(紧急)、
alert
(警告)、
crit
(严重)、
err
(错误)、
warning
(警告)、
notice
(注意)、
info
(信息)、
debug
(调试)。通常,生产环境更关注
error
及以上级别的日志。

journalctl 如何查看指定用户的日志?

有时候,你需要查看特定用户的日志。这可以通过

-u
参数结合
_UID
字段来实现。首先,你需要知道用户的UID。可以使用
id
命令来获取:

Narration Box
Narration Box

Narration Box是一种语音生成服务,用户可以创建画外音、旁白、有声读物、音频页面、播客等

下载
id yourusername

假设你的UID是1000,那么可以使用以下命令来查看该用户的日志:

journalctl _UID=1000

这会显示所有属于该用户的进程产生的日志。注意,这需要系统配置了相应的权限,否则可能看不到其他用户的日志。

如何持久化 journalctl 日志?

默认情况下,

journalctl
的日志存储在内存中,重启后会丢失。如果需要持久化存储日志,需要配置
systemd-journald
。编辑
/etc/systemd/journald.conf
文件,找到
Storage
选项,将其设置为
persistent

Storage=persistent

然后重启

systemd-journald
服务:

systemctl restart systemd-journald

这样,日志就会存储在

/var/log/journal/
目录下,即使重启系统也不会丢失。需要注意的是,这会占用一定的磁盘空间,需要根据实际情况进行配置。

journalctl 如何限制日志大小?

持久化日志后,如果不加以限制,日志文件可能会无限增长,最终耗尽磁盘空间。

systemd-journald
提供了多种选项来限制日志大小。可以在
/etc/systemd/journald.conf
文件中配置以下选项:

  • SystemMaxUse
    : 日志占用的最大磁盘空间。
  • SystemKeepFree
    : 保持空闲的磁盘空间。
  • SystemMaxFileSize
    : 单个日志文件的最大大小。
  • MaxRetentionSec
    : 日志保留的最大时间。

例如,限制日志最多占用1GB磁盘空间,并保留至少100MB空闲空间:

SystemMaxUse=1G
SystemKeepFree=100M

修改配置文件后,同样需要重启

systemd-journald
服务才能生效。

如何解决 journalctl 查看日志权限问题?

有时候,即使你是管理员,也可能无法查看所有日志。这通常是由于权限配置不当导致的。

journalctl
的权限控制主要通过
systemd-journal
组来实现。确保你的用户属于该组:

sudo usermod -a -G systemd-journal yourusername

然后重新登录,或者重启

systemd-journald
服务。如果仍然无法查看所有日志,可以检查
/etc/systemd/journald.conf
文件中的
ReadAccess
选项。如果设置为
system
,则只有
systemd-journal
组成员才能查看所有日志。如果设置为
all
,则所有用户都可以查看所有日志。

journalctl 与传统的 syslog 有什么区别

传统的

syslog
使用文本文件存储日志,而
journalctl
使用二进制格式存储日志,这使得
journalctl
在性能和功能上都优于
syslog
journalctl
支持更丰富的元数据,例如进程ID、用户ID、时间戳等,方便进行更精确的过滤和分析。此外,
journalctl
systemd
紧密集成,可以更好地跟踪系统状态。虽然
syslog
仍然被广泛使用,但
journalctl
正在逐渐成为Linux系统日志管理的主流选择。

相关专题

更多
nginx 重启
nginx 重启

nginx重启对于网站的运维来说是非常重要的,根据不同的需求,可以选择简单重启、平滑重启或定时重启等方式。本专题为大家提供nginx重启的相关的文章、下载、课程内容,供大家免费下载体验。

227

2023.07.27

nginx 配置详解
nginx 配置详解

Nginx的配置是指设置和调整Nginx服务器的行为和功能的过程。通过配置文件,可以定义虚拟主机、HTTP请求处理、反向代理、缓存和负载均衡等功能。Nginx的配置语法简洁而强大,允许管理员根据自己的需要进行灵活的调整。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

490

2023.08.04

nginx配置详解
nginx配置详解

NGINX与其他服务类似,因为它具有以特定格式编写的基于文本的配置文件。本专题为大家提供nginx配置相关的文章,大家可以免费学习。

496

2023.08.04

tomcat和nginx有哪些区别
tomcat和nginx有哪些区别

tomcat和nginx的区别:1、应用领域;2、性能;3、功能;4、配置;5、安全性;6、扩展性;7、部署复杂性;8、社区支持;9、成本;10、日志管理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

223

2024.02.23

nginx报404怎么解决
nginx报404怎么解决

当访问 nginx 网页服务器时遇到 404 错误,表明服务器无法找到请求资源,可以通过以下步骤解决:1. 检查文件是否存在且路径正确;2. 检查文件权限并更改为 644 或 755;3. 检查 nginx 配置,确保根目录设置正确、没有冲突配置等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

329

2024.07.09

Nginx报404错误解决方法
Nginx报404错误解决方法

解决方法:只需要加上这段配置:try_files $uri $uri/ /index.html;即可。想了解更多Nginx的相关内容,可以阅读本专题下面的文章。

3505

2024.08.07

scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

184

2023.10.18

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

263

2023.10.25

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

7

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Node.js 教程
Node.js 教程

共57课时 | 7.7万人学习

ASP 教程
ASP 教程

共34课时 | 3万人学习

Python 教程
Python 教程

共137课时 | 6.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号