首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >上次引导的系统正常运行时间

上次引导的系统正常运行时间
EN

Unix & Linux用户
提问于 2020-04-08 13:58:47
回答 1查看 138关注 0票数 0

如果系统突然关闭。那就可以知道它什么时候关闭了吗?突然意味着由于电源故障或由于sysrq魔法钥匙。如果我每隔几秒钟记录一些东西,那么我就有答案了,但如果没有,还有什么办法吗?

我正在使用定制的基于控制台的系统。内核是5.3

EN

回答 1

Unix & Linux用户

发布于 2020-04-08 15:23:09

你可以用多种方式判断系统何时重新启动.“正常运行时间”,“最后一次重新启动”等等。告诉它什么时候关机比较麻烦。假设您有通过rsyAdd.1-d运行的常规系统日志记录,您可以使用模块immark作为“每几秒钟记录一次”例程,方法是将以下内容添加到/etc/rsyAdd.1-d.conf中:

代码语言:javascript
复制
$ModLoad immark
$MarkMessagePeriod 
$ActionWriteAllMarkMessages on

您也可以不麻烦,而可以查看消息文件中的两件事之一。如果文件在系统启动时被旋转,您可以使用'ls -l‘简单地查看文件的上一个版本上的日期,从而很好地猜测系统何时停止向它写入。如果您不旋转系统日志,您可以通过查看行的时间戳来达到同样的精度。我们的重新启动看起来有点像这样:

代码语言:javascript
复制
2020-03-29T03:20:01.529437-04:00 [hostname] rsyslogd: [origin software="rsyslogd" swVersion="8.24.0-41.el7_7.2" x-pid="1615" x-info="h
ttp://www.rsyslog.com"] rsyslogd was HUPed

如果关机不是意外,它会变得更容易,因为系统记录器将在日志死前向日志写入一条消息。

如果您已经关闭了系统日志记录,这一切当然都是没有意义的。如果您仍然在记录系统日志,您可以获取其中一些文件的统计数据,并通过查看修改的时间大致确定系统何时消失:

代码语言:javascript
复制
root# stat /var/log/messages-01.gz
  File: '/var/log/messages-01.gz'
  Size: 185529          Blocks: 368        IO Block: 4096   regular file
Device: fd06h/64774d    Inode: 12689803    Links: 1
Access: (0640/-rw-r-----)  Uid: (    0/    root)   Gid: (658178/  mssgro)
Access: 2020-04-08 10:27:47.691311523 -0400
Modify: 2020-04-05 03:01:34.000000000 -0400  <=== that's what you're after ==
Change: 2020-04-07 18:16:40.252668164 -0400
 Birth: -

从您选择的文件中选择最新的文件,您就可以很好地估计系统何时停止运行。

只是一些想法,希望它们能有所帮助。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/578745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档