如何获取硬盘总运行时间

如何获取硬盘总运行时间

为了在服务器中进行磁盘轮换,我需要知道 Linux CentOS 版本 6.3(最终版)系统上磁盘的当前运行时间(在线)时间。

磁盘与 SATA 连接(例如 /dev/sdc),是简单的旋转类型(Western Digital RE 类型磁盘),并且不以任何 RAID 或类似方式组织。

我尝试使用smartctl(如建议的那样)找到它如何查看系统及硬盘总运行时间?),但无法找到信息。对命令有什么建议吗?

答案1

根据@Zoredache 的评论回答:

命令是smartctl --all /dev/sdc,要查看的部分是“具有阈值的供应商特定 SMART 属性”,其中有一个名为“Power_On_Hours”的属性。

因此,仅用于在运行时间内获得电源的命令是:

smartctl --all /dev/sdc | grep Power_On_Hours

然后可以显示类似以下内容的内容:

9 Power_On_Hours          0x0032   087   087   000    Old_age   Always       -       10171

因此运行时间为:10171 小时

答案2

如果你放入 NAGIOS 检查,你可以执行以下操作:

smartctl --all /dev/sda | grep Power_On_Hours | cut -d "-" -f2 | tr -d "[:blank:]"

这样,您就不会浪费时间,例如通过 ssh 连接服务器并一遍又一遍地输入命令。

另外,还有 hdsentinel 脚本,其中有Power on time行。有示例:

./HDSentinel | grep Power

输出应该看起来像

Power on time: 1223 days, 16 hours

我通常更喜欢 HDSentinel 脚本,因为它有硬盘健康输出。就硬盘健康而言,Smartctl 比 hdsentinel 更难分析。

相关内容