据我所知,Centos 7(默认情况下)仅将日志日志条目保留在内存中,因此当机器重新启动时这些日志条目会丢失。我对只能看到当前启动的消息这一事实感到满意。
抛开系统日志转发不谈,我该如何列出全部当前启动日志中已存储的条目数量?我试过:
[root@box ~]#journalctl -b 0 -- 日志开始于欧洲中部时间 2015 年 12 月 2 日星期三 16:32:14,结束于欧洲中部时间 2015 年 12 月 2 日星期三 18:09:55。 --
但它不显示旧条目,只显示(如您所见)过去几个小时的条目。
不过,我的机器实际上已经运行了几天:
[root@box ~]# 正常运行时间 18:12:38 持续 19 天, 4:28, 1 用户, 平均负载: 0.34, 0.39, 0.57
我想查看整个期间的日志。
答案1
我看到您面临的问题,在我的主机上,我没有观察到相同的行为。它显示了正确的信息。例如见下文
[root@centos7 ~]# uptime
19:53:40 up 13 days, 6:10, 1 user, load average: 0.06, 0.13, 0.20
[root@centos7 ~]#
[root@centos7 ~]# journalctl -b |head -1
-- Logs begin at Sat 2015-11-21 13:42:51 EST, end at Fri 2015-12-04 19:48:26 EST. --
因此,它必须是特定于您的设置的。你能检查一下,日志文件有多大吗?您的journalctl设置中是否有任何自定义设置,例如日志大小限制?的输出是什么journalctl --disk-usage
?
编辑:您将在主机上看到类似于下面的一行。一旦达到默认限制,并且如果您没有持久存储,该日志就会消失,并且journalctl -b
只能显示最旧的可用日志消息
Nov 21 13:43:27 xxxxxx-hostname systemd-journal[81]: Runtime journal is using 8.0M (max 74.8M, leaving 112.3M of free 740.6M, current limit 74.8M).