systemd 是大多数主要 Linux 发行版中的默认系统管理器,它带有一个名为“journald”的日志守护程序。 |
systemd
从系统、内核和各种服务或守护进程多个来源收集日志,并通过journald
提供集中管理的解决方案。
什么是journald?
journald是systemd的守护进程,它从系统、内核和各种服务或守护进程多个来源收集日志,并以二进制格式存储日志,以便于操作。
所有这些日志事件都由journald处理,它提供了一种集中处理日志的方法,而不管消息来自何处。
什么是journalctl?
journalctl是一个命令行工具,用于查看由journald收集的日志。
日志有很好的索引和结构,允许系统管理员根据各种参数轻松地分析和操作日志,例如,根据时间、引导顺序、特定服务、严重性等过滤日志。
1) 如何使日志长期保存在系统中?
默认情况下,journal
日志在大多数 Linux 发行版中是启用的,但它将日志数据存储在/run/log/journal/
中,重启时会被删除。如果要使日志永久保存,请执行以下步骤,这些步骤将自动创建/var/log/journal/
目录。
以 root 用户身份打开/etc/systemd/journald.conf
文件并取消注释“Storage=auto”的行并将其更改为“Storage=persistent”。或者,您可以使用 sed 命令替换文件中的匹配字符串。
[root@server1 ~]# sed -i '/Storage/ c\Storage=persistent' /etc/systemd/journald.conf
重启 systemd-journald 服务:
[root@server1 ~]# systemctl restart systemd-journald
修改/var/log/journal
权限:
[root@server1 ~]# chown