SmartMonTools:我如何知道我的硬盘上是否有 smartctl 测试正在运行?

SmartMonTools:我如何知道我的硬盘上是否有 smartctl 测试正在运行?

我是测试硬盘SmartMon工具

硬盘状态在测试之前(几天前只进行了一项简短的测试):

$ sudo smartctl -l selftest /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed without error       00%      5167         -

所以我开始长测试:

$ sudo smartctl -t long /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
Sending command: "Execute SMART Extended self-test routine immediately in off-line mode".
Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful.
Testing has begun.
Please wait 130 minutes for test to complete.
Test will complete after Sat May  9 16:05:27 2015

Use smartctl -X to abort test.

测试是应该正在运行,那么,但是如果我尝试查看它的进度:

$ sudo smartctl -l selftest /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed without error       00%      5167         -

...我得到的只是相同的结果,就像现在没有运行/执行测试一样。
'-H' 参数不提供更多信息:

$ sudo smartctl -H /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

并且,只要没有进程在运行(此测试由硬盘控制器单独执行),某些ps -e样式搜索应该没有帮助。

我怎么能够了解是否有一些 SMART 自检正在运行现在?

答案1

smartctl -a <device>寻找Self-test execution status.

没有运行测试时的示例:

Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever
                                        been run.

测试运行时的示例:

Self-test execution status:      ( 249) Self-test routine in progress...
                                        90% of test remaining.

运行选择性自检 ( -t select) 时,还会显示进度:

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA    MAX_LBA  CURRENT_TEST_STATUS
    1        0  125045423  Self_test_in_progress [90% left] (2881512-2947047)

答案2

尝试 :

smartctl -c /dev/sda

如果 /dev/sda 是您要检查的驱动器。

相关内容