1

Я хотел бы запустить тест SMART в автономном режиме на одном из моих жестких дисков (внутренний SATA). На машине установлена Ubuntu 14.04, поэтому я просто делаю smartctl -t offline /dev/sdb (как root). Он запускает тест и дает мне примерное время завершения.

Данный диск содержит корневой фс системы, поэтому он активно (но не сильно) используется. Поэтому, когда я позже запускаю smartctl -a /dev/sdb , даже спустя много времени, я вижу «Состояние автономного сбора данных: (0x04) Операция сбора автономных данных была приостановлена командой прерывания с хоста». Пока не ясно, закончится ли тест.

Насколько я понимаю, автономный тест по существу проверяет каждый сектор на диске, чтобы увидеть, можно ли его прочитать. Когда компьютер обращается к диску, тест приостанавливается и возобновляется после завершения команды. Но кажется, что отправляется достаточно команд, поэтому на тест затрачивается очень мало времени, поэтому он прогрессирует крайне медленно или вообще не прогрессирует. (Мне также интересно, есть ли намеренная задержка между завершением команды и возобновлением теста, чтобы избежать слишком частого переключения назад и вперед).

Есть ли способ как-то расставить приоритеты в SMART-тесте выше, чтобы он продвигался с разумной скоростью, сохраняя доступ к диску? Было бы хорошо, если бы доступ к диску был медленнее, если система все еще может работать. Я знаю о режиме -C , но это сделает систему непригодной для использования во время теста. Конечно, я мог бы загрузиться с другого диска и запустить SMART-тест с sdb , но это также сделало бы систему фактически непригодной для использования в течение продолжительного времени (и это требовало физического доступа к машине, что оказалось неудобным).

Я видел, что SMART-Test никогда не заканчивается, но, похоже, проблема противоположная: диск не работает и переходит в режим ожидания. Я не вижу доказательств того, что это так, потому что диск активен. Я также видел, что краткий автономный тест SMART никогда не заканчивается на всех дисках RAID1 на ServerFault, но ответ предполагает проблемы с контроллером или кабелями, которые я не имею оснований подозревать, поскольку диск в целом работает нормально.

(В качестве отступления: есть ли способ проверить ход автономного теста? Это дало бы мне представление о том, может ли тест пройти за разумное количество времени.)

1 ответ1

1

Если команда

sudo smartctl -c /dev/sdb

говорит

Offline data collection capabilities:
  Suspend Offline collection upon new command.

тогда ваш тест должен пройти нормально. Возможно, у вас есть smartd работающий в фоновом режиме и выполняющий случайные команды?

Вы можете разбить ваш -t offline на меньшие диапазоны блоков. Например,

sudo smartctl -t select,0+10000 /dev/sdb

затем, когда это будет сделано, повторите эту команду с ожиданием каждого результата:

sudo smartctl -t select,next+10000 /dev/sdb

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