У меня есть один диск, который не хочет делать самотестирование:

# 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 из скрипта и мне нужно дождаться завершения операции ...

1 ответ1

0

Если ваш сценарий хочет увидеть, завершен ли тест, вы должны смотреть не на журнал, а на статус выполнения самопроверки (в выводе smartctl -a ).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .