У меня есть один диск, который не хочет делать самотестирование:
# smartctl -t long /dev/ada3
smartctl 6.2 2013-07-26 r3841 [FreeBSD 9.2-RELEASE-p3 amd64] (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 379 minutes for test to complete.
Test will complete after Thu Apr 2 07:25:59 2015
Use smartctl -X to abort test.
#
Теперь я ожидаю увидеть сообщение «в процессе выполнения» в статусе. Мало того, что я ожидал этого, но это также, как это работает для всех других устройств!
Однако вместо этого я получаю «Прервано хостом»:
# smartctl -l selftest /dev/ada3
smartctl 6.2 2013-07-26 r3841 [FreeBSD 9.2-RELEASE-p3 amd64] (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 Extended offline Aborted by host 90% 1068 -
# 2 Extended offline Aborted by host 90% 761 -
С другой стороны, если я перезапущу smartctl -t long
я получаю сообщение, что одна проверка уже выполняется, и мне следует подождать. Я могу успешно отменить его с помощью -X
и перезапустить его с помощью -t long
и я получаю еще одну строку в выводе «Aborted by host».
Что тут происходит?
Обратите внимание, что даже если тест может быть фактически выполнен (хотя «оставшиеся 90%» всегда застряли!) Мне нужен вывод сообщения "процедура в процессе", потому что я запускаю smartctl из скрипта и мне нужно дождаться завершения операции ...