man smartctl
говорится (УКАЗАНО для краткости):
В первая категория, называется «онлайн-тестирование». В вторая категория тестирования называется «офлайн-тестированием». Обычно диск приостанавливает автономное тестирование во время доступа к диску, а затем автоматически возобновляет его, когда в противном случае диск бездействует. В третья категория тестирования (и единственная категория, для которой слово «тестирование» действительно подходит) - это «самотестирование».
Включает или отключает автоматический автономный тест SMART, который каждые четыре часа сканирует диск на предмет дефектов. Эта команда может быть подана во время нормальной работы системы.
Кто запускает тест-драйв прошивки? Что это за тесты - читает / записывает ли прошивка на диск - что именно происходит? Безопасно ли запускать тестирование в ОС (linux) или можно запланировать тест на более позднее время - как это происходит - при перезагрузке ОС в приглашении BIOS («автономный тест»)? Где отображаются результаты - журналы SMART?
Прошивка накопителя запускает тесты.
Подробности тестов можно прочитать, например, на сайте www.t13.org/Documents/UploadedDocuments/technical/e01137r0.pdf, где резюмируются элементы короткого и длинного тестов следующим образом:
электрический сегмент, в котором привод проверяет собственную электронику. Конкретные тесты в этом сегменте зависят от производителя, но в качестве примеров: этот сегмент может включать такие тесты, как тест буферной RAM, тест схемы чтения / записи и / или тест элементов головки чтения / записи.
сегмент поиска / сервопривода, в котором привод проверяет его способность находить и серво на дорожках данных. Конкретная методология, используемая в этом тесте, также зависит от поставщика.
сегмент сканирования чтения / проверки, в котором накопитель выполняет сканирование чтения некоторой части поверхности диска. Количество и местоположение сканированной поверхности зависят от ограничения времени завершения и зависят от поставщика.
Критерии расширенного самотестирования такие же, как и у короткого самотестирования, за двумя исключениями: сегмент (3) расширенного самотестирования должен представлять собой сканирование чтения / проверки всей области пользовательских данных, и нет максимальное время, в течение которого привод выполняет тест.
Выполнять неразрушающий контроль во время работы ОС безопасно, хотя вероятно некоторое снижение производительности. Поскольку smartctl
страница руководства говорит для обоих -t short
и -t long
,
Эта команда может быть дана при нормальной работе системы (если не запущена в неактивном режиме)
Если вы активируете режим захвата с помощью -C
, smartctl
предполагает, что диск может быть занят или недоступен. Это должно не выполняется на диске, который использует ОС.
Как указано на странице руководства, автономное тестирование (что означает просто периодическое фоновое тестирование) ненадежно и никогда официально не входило в спецификации ATA. Вместо этого я запускаю свой из cron; Таким образом я знаю, когда они должны произойти, и могу остановить это, если мне нужно.
smartctl
вывод. Вот один с запущенным тестом:[root@risby images]# smartctl -a /dev/sdb smartctl 6.4 2015-06-04 r4109 [x86_64-linux-4.1.6-201.fc22.x86_64] (local build) Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org [...] SMART Self-test log structure revision number 1 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error # 1 Extended offline Completed without error 00% 20567 - # 2 Extended offline Completed without error 00% 486 - SMART Selective self-test log data structure revision number 0 Note: revision number not 1 implies that no selective self-test has ever been run SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS 1 0 0 Self_test_in_progress [90% left] (0-65535) 2 0 0 Not_testing 3 0 0 Not_testing 4 0 0 Not_testing 5 0 0 Not_testing
Обратите внимание на два предыдущих завершенных теста (при 486 и 20567 часах включения соответственно) и текущий работающий (завершено на 10%).
Реализации SMART зависят от производителя, иногда довольно обширные журналы доступны через smart -a
команда. Вот что я получаю на одном из моих дисков с самошифрованием из Hitachi:
SMART Error Log Version: 1
ATA Error Count: 3
Error 3 occurred at disk power-on lifetime: 2543 hours (105 days + 23 hours)
When the command that caused the error occurred, the device was active or idle.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
10 51 08 00 08 00 00 Error: IDNF at LBA = 0x00000800 = 2048
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
60 08 68 00 08 00 40 00 00:00:06.139 READ FPDMA QUEUED
27 00 00 00 00 00 e0 00 00:00:06.126 READ NATIVE MAX ADDRESS EXT
ec 00 00 00 00 00 a0 00 00:00:06.125 IDENTIFY DEVICE
ef 03 46 00 00 00 a0 00 00:00:06.125 SET FEATURES [Set transfer mode]
27 00 00 00 00 00 e0 00 00:00:06.125 READ NATIVE MAX ADDRESS EXT
...
Этот технический документ проливает свет на коды ошибок, появляющиеся в журнале. Сокращения распространенных ошибок:
В моем случае ошибку IDNF (ID Not Found) можно проследить до инцидента, когда диск был подключен через адаптер USB-SATA и оказался недостаточно мощным, что помешало ему правильно искать.