云网牛站
所在位置:首页 > Linux云服务器 > 在Linux服务器上保留永久存储的系统日志(Systemd Journald)记录

在Linux服务器上保留永久存储的系统日志(Systemd Journald)记录

2020-02-11 10:12:55作者:曾秀珠稿源:云网牛站

在本文中,我们将研究如何将系统日志记录(Systemd Journald Log)持久保存在Linux服务器上。当问题不断发生时,保留系统日志对您的服务进行故障排除很有用,在本文的结尾,您应该能够配置系统日志以在重新引导服务器时保留事件记录。

 

Systemd Journald基础

默认情况下,Systemd将系统日志存储在/run/log/journal目录中,正如我们在了解Linux文件系统层次结构中所说的(参考:介绍Red Hat Enterprise Linux(RHEL) 8的文件系统目录/层次结构),/run目录中的所有内容都将被清除,并在重新引导时重新创建内容,这意味着在系统重新引导时将清除日志。

我们可以在/etc/systemd/journald.conf文件中调整systemd-journald服务的配置设置,以使日志在重新引导后仍然存在,打开文件以查看其内容:

$ sudo vim /etc/systemd/journald.conf

这些是可以配置的常用选项,大多数系统中的大多数选项都会被注释掉,以便您进行相应调整:

[Journal]

#Storage=auto

#Compress=yes

#Seal=yes

#SplitMode=uid

#SyncIntervalSec=5m

#RateLimitInterval=30s

#RateLimitBurst=1000

#SystemMaxUse=

#SystemKeepFree=

#SystemMaxFileSize=

#RuntimeMaxUse=

#RuntimeKeepFree=

#RuntimeMaxFileSize=

#MaxRetentionSec=

#MaxFileSec=1month

#ForwardToSyslog=yes

#ForwardToKMsg=no

#ForwardToConsole=no

#ForwardToWall=yes

#TTYPath=/dev/console

#MaxLevelStore=debug

#MaxLevelSyslog=debug

#MaxLevelKMsg=notice

#MaxLevelConsole=info

#MaxLevelWall=emerg

#LineMax=48K

 

配置Systemd Journald

要将systemd-journald服务配置为在重新启动后永久保留系统日志,您需要将Storage设置为persistent。

可以为Storage参数设置的其他值是:[1]、persistent:将日志存储在/var/log/journal目录中,该目录在重新启动后仍然存在。[2]、volatile:将日记存储在volatile/run/log/journal目录中,这不会导致系统重启。[3]、auto:rsyslog将确定使用持久性存储(persistent)还是易失性存储(volatile),如果存在/var/log/journal目录,则rsyslog使用持久性存储,否则使用易失性存储。

对于永久存储,请将其设置为:

[Journal]

Storage=persistent

提交更改后,请重新启动systemd-journald服务以使配置更改生效:

sudo systemctl restart systemd-journald

确认服务已重新启动并正在运行:

$ systemctl status systemd-journald

在Linux服务器上保留永久存储的系统日志(Systemd Journald)记录

应该创建/var/log/journal目录:

$ ls /var/log/journal

65113b1a0d2f6087d515e6a8cd0ee7ef

/var/log/journal下的子目录的长名称中包含十六进制字符,并且包含*.journal文件:

$ ls /var/log/journal/65113b1a0d2f6087d515e6a8cd0ee7ef/

system.journal

*.journal文件是存储结构化和索引日记帐分录的二进制文件。

 

调整日记的最大存储使用量

您可以通过取消注释和更改以下内容来设置永久日志的最大大小:

SystemMaxUse=500M

默认大小限制设置为基础文件系统大小的10%,但上限为4GiB:

sudo systemctl restart systemd-journald

 

相关主题

在Linux上查看系统日志的两种方法(在终端及桌面中安装Gnome Logs)

精选文章
热门文章