SMART-тест ніколи не закінчується


17

Під час запуску SMART-тестів за допомогою smartmontools вони НІКОЛИ не закінчують. Я завжди отримую "Перерване (скидання хоста)" на різних різних системах і дисках, включаючи Debian у x86 та ARM, OS X на x64, із зовнішніми та внутрішніми накопичувачами. Навіть при запуску в невольному режимі з дисками всі порожні (нульові з dd).

Що я роблю неправильно?


Ти не робиш нічого поганого тобі. Його обладнання, яке не працює
Ramhound

Це означає взагалі працювати?
bot47

Так, це повинно працювати
Рамхаунд

@MaxRied, ви хочете сказати, що ви пробували це на багатьох різних комп’ютерах з журналами різних дисків, і все ще не бачили завершення, навіть на дисках, які, як ви знаєте, здорові від різного інструменту аналізу SMART?
Френк Томас

@FrankThomas Так.
bot47

Відповіді:


14

Якщо привід не виконує жодної активності вводу / виводу під час тесту, він може перейти в режим очікування, що підвищує Interrupted (host reset)стан. Спробуйте прочитати з диска через відповідні інтервали:

while true; do dd if=/dev/disk1 of=/dev/null count=1; sleep 60; done

(замініть /dev/disk1відповідним пристроєм; читає один сектор з цього пристрою кожні 60 секунд, поки ви не натиснете ctrl-c)

Це допомогло в моєму середовищі: ОС X 10.6.8, USB-накопичувач WD Elements, драйвер SAT-SMART 0.8.

Тест на захопленні теоретично повинен підтримувати привід в Інтернеті. І все ж апаратне командування, надіслане до, smartctlможе затримати час до завершення тесту, внаслідок чого ядро ​​скидає посилання та закінчується в тій же ситуації, що вище ( помилка №303 ).

Щоб отримати докладнішу інформацію, перегляньте цей потік у списку розсилки, який підтримує smartmontools. Я вдячний Крістіану Франке за прозріння, що дається тут.


Інші можливі перебої ( serverfault.com/a/584055 ): невдалий кабель може спричинити тайм-аути, і ядро ​​спровокує скидання. Я менш впевнений, що потрібно зупинитися на кмітливості. Будь-які очікування та перерви з'являться у dmesg / kern.log / journalctl -fk.
Тобу

Ого, ось горіхи! Підтвердження - після скидання HGST HDN726060ALE610 з дзеркала zpool він застряг на 10% протягом 36 годин (закінчиться швидше без іншої діяльності, ПРАВА?). П'ять хвилин цих крихітних читань з боку ДД спричинили його закінчення. Скептицизм відхилено.
Білл МакГонігле

Чи /dev/disk1повинен бути пристрій або перегородка, тобто, як /dev/sdaабо /dev/sda1?
Мерчако

@Merchako Це пов'язаний з Mac OS, де він насправді такий.
bot47

5

Я спробував рішення від Tobu, у моєму випадку я продовжував знаходити зовнішній накопичувач USB у режимі сну незалежно від того, як колись запустив тест і перервав його, схоже, дд закінчився читанням з кешу ядра, а кеш був достатньо великий для диска для переходу в режим сну. Я помітив, що зателефонувавши до smartctl з проханням про статус, завжди вдалося «розбудити» диск. Отже: ця версія тієї самої ідеї зробила для мене трюк:

sudo bash -c 'while true; do smartctl -a /dev/sdb > /dev/null; sleep 60; done'

Через 5 годин зовнішній диск USB все ще крутиться. Вперше я міг побачити довгий тест smartctl на зовнішньому диску.

Я вважаю, що це рішення також має перевагу в тому, що головки дисків не переміщуються зайво щохвилини. Довгий пробіг закінчився майже точно в передбачуваний час (сценарій неспання не додав часу на пробіг)


3

Різниця у відповіді Арі полягає у використанні watch, оскільки smartctlрезультат може насправді бути цікавим для відстеження стану:

sudo watch -d -n 60 smartctl -a /dev/sdx

Це автоматично оновлюватиме висновок smartctl -aкожні 60 секунд, тож ви зможете побачити, скільки часу залишається для самотестування, та виділити зміни (так простіше помітити, що тест справді прогресує).


+1, ніколи watchраніше не бачив .
Хашим

1

Тест у неволі може не працювати, якщо це займе більше 20 секунд.

Джерело: квиток № 303 під назвою "У режимі інтелектуального тестування у неволі збільшуйте тайм-аут, як описано пристроєм ATA".

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.