我想获取系统停机时间,即系统停机(可能是由于重新启动或关闭)并且系统启动。我尝试检查下面提到的几个命令。
我将 (1+06:28) 转换为秒,以为这是系统关闭和启动之间的持续时间。但我进一步检查后发现它意味着天、小时和分钟。但我的系统一天都没有重新启动,甚至一天都没有关闭。
为什么会出现这个现象?
last -x | grep reboot & last -x | grep shutdown
reboot system boot 5.14.0-325.el9.x Tue Mar 5 08:16 still running
reboot system boot 5.14.0-325.el9.x Mon Mar 4 01:47 - 08:16 (1+06:28)
shutdown system down 5.14.0-325.el9.x Tue Mar 5 08:16 - 08:16 (00:00)
[root@ansible ~]# last reboot
reboot system boot 5.14.0-419.el9.x Tue Mar 5 18:44 still running
reboot system boot 5.14.0-391.el9.x Thu Feb 22 20:21 - 18:44 (11+22:23)
reboot system boot 5.14.0-391.el9.x Mon Dec 18 14:30 - 14:46 (00:16)
reboot system boot 5.14.0-373.el9.x Mon Dec 18 13:58 - 14:29 (00:30)
reboot system boot 5.14.0-373.el9.x Tue Oct 10 14:42 - 14:46 (00:04)
reboot system boot 5.14.0-368.el9.x Tue Oct 10 13:44 - 14:41 (00:57)
reboot system boot 5.14.0-368.el9.x Wed Oct 4 19:59 - 14:41 (5+18:42)
reboot system boot 5.14.0-368.el9.x Wed Oct 4 18:02 - 14:41 (5+20:39)
reboot system boot 5.14.0-368.el9.x Mon Oct 2 17:29 - 18:55 (01:26)
reboot system boot 5.14.0-366.el9.x Mon Oct 2 17:22 - 17:29 (00:06)
reboot system boot 5.14.0-366.el9.x Thu Sep 21 17:20 - 17:21 (00:00)
reboot system boot 5.14.0-354.el9.x Thu Sep 21 16:53 - 17:19 (00:25)
reboot system boot 5.14.0-354.el9.x Mon Sep 18 12:17 - 13:12 (00:54)
reboot system boot 5.14.0-354.el9.x Tue Sep 5 17:14 - 13:12 (12+19:57)
reboot system boot 5.14.0-354.el9.x Mon Sep 4 15:21 - 13:12 (13+21:50)
reboot system boot 5.14.0-354.el9.x Mon Sep 4 15:14 - 15:15 (00:01)
reboot system boot 5.14.0-354.el9.x Wed Aug 30 18:03 - 15:15 (4+21:11)
reboot system boot 5.14.0-354.el9.x Tue Aug 29 10:48 - 15:15 (6+04:26)
reboot system boot 5.14.0-354.el9.x Mon Aug 28 20:19 - 15:15 (6+18:55)
reboot system boot 5.14.0-354.el9.x Mon Aug 28 18:43 - 20:17 (01:33)
reboot system boot 5.14.0-354.el9.x Mon Aug 28 18:38 - 18:43 (00:04)
reboot system boot 5.14.0-354.el9.x Mon Aug 28 18:29 - 18:38 (00:08)
答案1
我正在使用 Ubuntu,我相信日志中的以下条目是通过内核进行的,因此应该是跨版本的标准。
以下命令将让你关闭
journalctl -a | grep "Shutting down\."
以下命令将为你提供启动项
journalctl -a | grep "Command line:"
我假设您正在运行一个使用日志的 Linux,您可能需要稍微调整一下您所查找的内容以获得适合您的 Linux 的正确格式。
journalctl -b
为您提供从上次启动开始的日志,因此请使用它作为时间参考并找到唯一的线条。
如果你想玩得更棘手一点:
journalctl -a | awk '/Command line:/{print $1" "$2" "$3" - Startup"}/Shutting down\./{ print $1" "$2" "$3" - Shutdown"}'
我的日志可以追溯到 6 个月前,并且能够记录我关机和启动的时间。
如果你不想回溯到那么远,你可以在 journalctl 命令中添加 -n
否则,您将获取整个日志的日期。