Как я уже указывал в своем другом ответе , на каждом современном жестком диске имеется место для переназначения (потому что, особенно при сегодняшних плотностях дисков, диск не будет идеальным - всегда будет несколько дефектов, которые диск должен переназначить, даже на фирменных - новые, никогда не использовавшиеся, сошли с конвейера в мои руки).
Поэтому теоретически вы должны сообщать об badblocks
ошибке SMART до того, как что-то наподобие замечает (видимые конечному пользователю) поврежденные сектора на диске.
На современных жестких дисках любые плохие сектора, видимые конечному пользователю (как может сообщать badblocks
ОС или автоматически обнаруживать ОС), являются последним вздохом и дрожью умирающего диска.
В конечном итоге SMART и badblocks
протестировать две разные, но взаимосвязанные вещи:
SMART - это инструмент самоконтроля:
Жесткий диск знает некоторую информацию о своих рабочих параметрах и обладает мета-знаниями о том, что является «нормальным» для одних и «приемлемым» для других.
Если накопитель обнаружит, что определенные параметры являются «ненормальными» или «неприемлемыми», он сообщит о состоянии перед отказом - другими словами, накопитель по-прежнему функционирует, но может вскоре выйти из строя.
Например: двигатель шпинделя обычно потребляет 0,10 ампер, но теперь он потребляет 0,50 ампер - ненормально высокое усилие, которое может указывать на то, что вал сжимается, или постоянная смазка на подшипниках исчезла. В конце концов, двигатель не сможет преодолеть сопротивление, и привод закроется.
Другой пример: диск имеет 1000 блоков «переназначения» для работы с поврежденными секторами. Он использовал 750 из них, и инженеры, которые создали накопитель, определили, что число повторных операций указывает на что-то внутренне неправильное (плохое блюдо, отказ по старости, поврежденная головка) - накопитель сообщит о состоянии перед отказом, позволяя вам получить время Ваши данные отключены до того, как закончится место переназначения и станут видны поврежденные сектора.
SMART ищет больше, чем просто плохие секторы - это более всесторонняя оценка состояния диска. Вы можете получить предупреждение SMART перед отказом на приводе без дефектных секторов и ошибок чтения / записи (например, проблема с двигателем шпинделя, описанная выше).
badblocks
инструмент с определенной (устаревшей) целью: поиск плохих секторов
badblocks
приходит со времени до SMART и переназначения плохого сектора. В то время мы знали, что у накопителей есть недостатки, но единственный способ отобразить их, чтобы предотвратить случайное хранение данных, - это провести стресс-тестирование диска, вызвать сбой, а затем помнить, что данные никогда не помещались туда снова.
Причина, по которой я говорю, что она устарела, состоит в том, что электроника на современных приводах уже делает то badblocks
, что делает, внутренне и в несколько тысяч раз быстрее. badblocks
в основном позволяет старым накопителям, в которых не хватает сложной электроники, переназначить (или пропустить) сектора, которые вышли из строя, но современные жесткие диски уже обнаруживают неисправные сектора и переназначают их для вас.
Теоретически вы могли бы использовать badblocks
данные, чтобы ОС отображала (видимые) сбои, как если бы ваш современный диск был древним диском Винчестера, но это в конечном итоге контрпродуктивно - как я уже говорил, ЛЮБЫЕ поврежденные сектора, обнаруженные badblocks
на современном диске, являются причиной отказа от Весь диск как неисправен (или собирается выйти из строя).
Видимые поврежденные сектора указывают на то, что на диске нет места для переназначения, что относительно редко встречается для современных дисков, если только они не старые (подходит к концу функциональный ресурс) или неисправны (неисправные диски / головки с завода).
Таким образом, если вы работаете badblocks
на диске до того, как вы развернете его в работе, вы почувствуете себя лучше и сделаете это, но если ваш диск был изготовлен в этом веке и на нем виден плохой сектор, вы должны выбросить его в корзину (или вызвать его гарантия). За мои деньги SMART статус и глубокая защита - лучшее использование моего времени, чем ручная проверка дисков.
smartctl -t long /dev/sda
время от времени, или я могу предположить, чтоsmartd
это «автоматически» предупредит меня о неизбежных проблемах без необходимости что-либо настраивать?badblocks
считывает каждый байт с накопителя, перезаписывает их случайным образом, а затем возвращает исходные данные. УМНЫЕ самопроверки не делают этого. Это должно очистить все «ожидающие» сектора, если я правильно понимаю.Хорошие ответы на этот вопрос
/superuser//a/693065
/superuser//a/693064
Вопреки другим ответам я считаю бадблоки не устаревшими, а очень полезным инструментом. Однажды я обновил свой компьютер с новым жестким диском, и он начал работать нестабильно. Благодаря плохим блокам у меня ушло много времени, чтобы понять, что поверхность диска имеет дефекты. С тех пор я запускаю полные блокираторы режима записи (разрушаемые!) Для каждого нового жесткого диска, который я начинаю использовать, и у меня больше никогда не возникало этой проблемы. Я очень рекомендую
время sudo badblocks -swvo sdX.log / sev / sdX
за каждый новый жесткий диск. Он будет проверять каждый бит диска на запись и чтение, поэтому он может избежать многих проблем позже.
Во время этого теста неисправные блоки будут отображаться на диске. Таким образом, «количество повторных секторов» следует записывать до и после теста и сравнивать с пороговым значением SMART, поскольку оно скажет что-то о работоспособности накопителя.
источник
badblocks - это пережиток старых времен, он не очень полезен, он может найти нечитаемый в настоящее время сектор, но правильное решение для плохого сектора - восстановить данные из резервной копии. Что может быть сделано, если данные не были важны для вас, это удалить связанный файл и записать что-либо в это место, это позволит диску перераспределить сектор, если он сочтет это необходимым, и продолжить работу.
Самопроверка диска также обойдется и проверит весь носитель на наличие различных дефектов; предполагается, что он будет использовать более низкие пороги по сравнению с тем, что он использует в обычной работе, чтобы увидеть, есть ли на диске много слабых мест, и на основе логики поставщика может решить, что диск истек срок его службы, и объявить тест не удалось. В этот момент вы должны вынуть все свои данные или восстановить их из резервной копии и заменить диск.
Если действие диска (либо с помощью бадблоков, либо при нормальной работе) встречается с неисправимой ошибкой чтения, диск автоматически обновляет свой счетчик отложенных перераспределений, а когда выполняется перераспределение, он обновляет отложенные перераспределения и перераспределенные счетчики. Простой дд получит такое же.
Если вам нужно выбрать между этими двумя вариантами, используйте smartctl -t, если он лучше проанализирует диск.
Я также могу предложить использовать мою утилиту дискового сканирования https://github.com/baruch/diskscan , она больше работает как плохие блоки, но пытается оценить, работают ли сектора, которые плохо работают, что-то вроде сектора с плохим слухом, который требует много дольше читать. Это указывает на проблему с развивающимся носителем, и в будущих версиях также может предлагаться автоматическая попытка помочь диску устранить эту проблему.
источник
badblocks
нагрузка на диск не влияет на самотестирование SMART?badblocks
читает каждый байт с диска, заменяет его тестовыми шаблонами, а затем записывает исходные данные на место. SMART самотестирование аналогично тестам чтения-записи?