如何使用命令查找Linux中的总开机时间?

如何使用命令查找Linux中的总开机时间?

我已在设备上安装了 Linux。对于该设备,我需要找到总的开机时间。找到它的命令是什么?

答案1

uptime告诉您机器已经运行了多长时间自启动以来,并且重新启动后它会归零,因此它不能解决您的问题;除非您找到一种方法来记录这些值并将其求和,同时还以某种方式有一个标志来告诉您机器是否已重新启动。

你可以使用smartctl.如果/dev/sdx是你的启动硬盘,

smartctl -a /dev/sdx | grep Power_On_Hours

将为您提供驱动器已运行的总小时数。这与机器的总正常运行时间的精确值不同,但在大多数情况下,这将是一个很好的近似值(此规则的例外情况是硬盘驱动器被更换或长时间进入睡眠模式)。

答案2

你可以使用正常运行时间。它是为 Debian 打包的(可能还有 Ubuntu、Mint 等衍生版本),但我不知道它是否为其他发行版打包。

来自 debian 包的描述:

跟踪正常运行时间的守护进程,尤其是高运行时间

正常运行时间守护进程通过启动 ID 跟踪系统的最高正常运行时间,并使用系统启动时间来保持会话彼此分开。它具有一个控制台程序来显示统计数据,并且可以在达到里程碑或新记录时发送邮件。

我的系统之一的输出示例:

# uprecords 
     #               Uptime | System                                     Boot up
----------------------------+---------------------------------------------------
     1   147 days, 03:45:55 | Linux 5.10.0-4-amd64      Fri Mar  5 22:27:37 2021
     2    98 days, 00:22:39 | Linux 5.17.0-1-amd64      Fri May  6 16:34:24 2022
     3    74 days, 10:59:58 | Linux 5.14.0-1-amd64      Sat Oct  2 05:49:18 2021
     4    72 days, 04:15:10 | Linux 5.4.0-4-amd64       Tue Mar 10 16:31:51 2020
     5    68 days, 03:41:50 | Linux 5.18.0-4-amd64      Fri Aug 26 12:59:09 2022
     6    64 days, 19:23:26 | Linux 4.19.0-3-amd64      Mon Mar 11 00:46:53 2019
     7    64 days, 13:00:30 | Linux 5.16.0-3-amd64      Thu Mar  3 03:25:00 2022
     8    53 days, 01:00:14 | Linux 5.2.0-2-amd64       Thu Sep 12 19:28:59 2019
     9    51 days, 02:19:55 | Linux 5.10.0-1-amd64      Wed Jan 13 15:26:20 2021
    10    48 days, 05:35:56 | Linux 5.6.0-1-amd64       Thu May 21 19:47:35 2020
----------------------------+---------------------------------------------------
->  31     9 days, 09:25:44 | Linux 6.0.0-2-amd64       Wed Nov  2 18:01:34 2022
----------------------------+---------------------------------------------------
1up in     0 days, 21:21:34 | at                        Sun Nov 13 00:48:51 2022
t10 in    38 days, 20:10:13 | at                        Tue Dec 20 23:37:30 2022
no1 in   137 days, 18:20:12 | at                        Wed Mar 29 21:47:29 2023
    up  1372 days, 09:11:43 | since                     Wed Feb  6 20:29:05 2019
  down     1 day , 21:46:30 | since                     Wed Feb  6 20:29:05 2019
   %up               99.861 | since                     Wed Feb  6 20:29:05 2019

它只从安装时开始跟踪正常运行时间 - 因此,显然,它无法告诉您有关此之前的正常运行时间的任何信息。

另请注意,系统正常运行时间是不是与“开机时间”完全相同。它会非常接近,但是打开机器电源和内核启动之间的时间不会被计算在内......这可能是每次启动 20 或 30 秒到每次启动几分钟,具体取决于启动所需的时间您的系统进行开机测试并启动内核。

相关内容