Современный жёсткий диск — уникальный компонент компьютера. Он уникален тем, что хранит в себе служебную информацию, изучая которую, можно оценить «здоровье» диска. Эта информация содержит в себе историю изменения множества параметров, отслеживаемых винчестером в процессе функционирования. Больше ни один компонент системного блока не предоставляет владельцу статистику своей работы! Вкупе с тем, что HDD является одним из самых ненадёжных компонентов компьютера, такая статистика может быть весьма полезной и помочь его владельцу избежать нервотрёпки и потери денег и времени.

Информация о состоянии диска доступна благодаря комплексу технологий, называемых общим именем S.M.A.R.T. (Self-Monitoring, Analisys and Reporting Technology, т. е. технология самомониторинга, анализа и отчёта). Этот комплекс довольно обширен, но мы поговорим о тех его аспектах, которые позволяют посмотреть на атрибуты S.M.A.R.T., отображаемые в какой-либо программе по тестированию винчестера, и понять, что творится с диском.

Отмечу, что нижесказанное относится к дискам с интерфейсами SATA и РАТА. У дисков SAS, SCSI и других серверных дисков тоже есть S.M.A.R.T., но его представление сильно отличается от SATA/PATA. Да и мониторит серверные диски обычно не человек, а RAID-контроллер, потому про них мы говорить не будем.

Итак, если мы откроем S.M.A.R.T. в какой-либо из многочисленных программ, то увидим приблизительно следующую картину (на скриншоте приведён S.M.A.R.T. диска Hitachi Deskstar 7К1000.С HDS721010CLA332 в HDDScan 3.3):

В каждой строке отображается отдельный атрибут S.M.A.R.T. Атрибуты имеют более-менее стандартизованные названия и определённый номер, которые не зависят от модели и производителя диска.

Каждый атрибут S.M.A.R.T. имеет несколько полей. Каждое поле относится к определённому классу из следующих: ID, Value, Worst, Threshold и RAW. Рассмотрим каждый из классов.

  • ID (может также именоваться Number ) — идентификатор, номер атрибута в технологии S.M.A.R.T. Название одного и того же атрибута программами может выдаваться по-разному, а вот идентификатор всегда однозначно определяет атрибут. Особенно это полезно в случае программ, которые переводят общепринятое название атрибута с английского языка на русский. Иногда получается такая белиберда, что понять, что же это за параметр, можно только по его идентификатору.
  • Value (Current) — текущее значение атрибута в попугаях (т. е. в величинах неизвестной размерности). В процессе работы винчестера оно может уменьшаться, увеличиваться и оставаться неизменным. По показателю Value нельзя судить о «здоровье» атрибута, не сравнивая его со значением Threshold этого же атрибута. Как правило, чем меньше Value, тем хуже состояние атрибута (изначально все классы значений, кроме RAW, на новом диске имеют максимальное из возможных значение, например 100).
  • Worst — наихудшее значение, которого достигало значение Value за всю жизнь винчестера. Измеряется тоже в «попугаях». В процессе работы оно может уменьшаться либо оставаться неизменным. По нему тоже нельзя однозначно судить о здоровье атрибута, нужно сравнивать его с Threshold.
  • Threshold — значение в «попугаях», которого должен достигнуть Value этого же атрибута, чтобы состояние атрибута было признано критическим. Проще говоря, Threshold — это порог: если Value больше Threshold — атрибут в порядке; если меньше либо равен — с атрибутом проблемы. Именно по такому критерию утилиты, читающие S.M.A.R.T., выдают отчёт о состоянии диска либо отдельного атрибута вроде «Good» или «Bad». При этом они не учитывают, что даже при Value, большем Threshold, диск на самом деле уже может быть умирающим с точки зрения пользователя, а то и вовсе ходячим мертвецом, поэтому при оценке здоровья диска смотреть стоит всё-таки на другой класс атрибута, а именно — RAW. Однако именно значение Value, опустившееся ниже Threshold, может стать легитимным поводом для замены диска по гарантии (для самих гарантийщиков, конечно же) — кто же яснее скажет о здоровье диска, как не он сам, демонстрируя текущее значение атрибута хуже критического порога? Т. е. при значении Value, большем Threshold, сам диск считает, что атрибут здоров, а при меньшем либо равном — что болен. Очевидно, что при Threshold=0 состояние атрибута не будет признано критическим никогда. Threshold — постоянный параметр, зашитый производителем в диске.
  • RAW (Data) — самый интересный, важный и нужный для оценки показатель. В большинстве случаев он содержит в себе не «попугаи», а реальные значения, выражаемые в различных единицах измерения, напрямую говорящие о текущем состоянии диска. Основываясь именно на этом показателе, формируется значение Value (а вот по какому алгоритму оно формируется — это уже тайна производителя, покрытая мраком). Именно умение читать и анализировать поле RAW даёт возможность объективно оценить состояние винчестера.

Этим мы сейчас и займёмся — разберём все наиболее используемые атрибуты S.M.A.R.T., посмотрим, о чём они говорят и что нужно делать, если они не в порядке.

Аттрибуты S.M.A.R.T.
0x
0x

Перед тем как описывать атрибуты и допустимые значения их поля RAW, уточню, что атрибуты могут иметь поле RAW разного типа: текущее и накапливающее. Текущее поле содержит значение атрибута в настоящий момент, для него свойственно периодическое изменение (для одних атрибутов — изредка, для других — много раз за секунду; другое дело, что в программах чтения S.M.A.R.T. такое быстрое изменение не отображается). Накапливающее поле — содержит статистику, обычно в нём содержится количество возникновений конкретного события со времени первого запуска диска.

Текущий тип характерен для атрибутов, для которых нет смысла суммировать их предыдущие показания. Например, показатель температуры диска является текущим: его цель — в демонстрации температуры в настоящий момент, а не суммы всех предыдущих температур. Накапливающий тип свойственен атрибутам, для которых весь их смысл заключается в предоставлении информации за весь период «жизни» винчестера. Например, атрибут, характеризующий время работы диска, является накапливающим, т. е. содержит количество единиц времени, отработанных накопителем за всю его историю.

Приступим к рассмотрению атрибутов и их RAW-полей.

Атрибут: 01 Raw Read Error Rate

Для всех дисков Seagate, Samsung (начиная с семейства SpinPoint F1 (включительно)) и Fujitsu 2,5″ характерны огромные числа в этих полях.

Для остальных дисков Samsung и всех дисков WD в этом поле характерен 0.

Для дисков Hitachi в этом поле характерен 0 либо периодическое изменение поля в пределах от 0 до нескольких единиц.

Такие отличия обусловлены тем, что все жёсткие диски Seagate, некоторые Samsung и Fujitsu считают значения этих параметров не так, как WD, Hitachi и другие Samsung. При работе любого винчестера всегда возникают ошибки такого рода, и он преодолевает их самостоятельно, это нормально, просто на дисках, которые в этом поле содержат 0 или небольшое число, производитель не счёл нужным указывать истинное количество этих ошибок.

Таким образом, ненулевой параметр на дисках WD и Samsung до SpinPoint F1 (не включительно) и большое значение параметра на дисках Hitachi могут указывать на аппаратные проблемы с диском. Необходимо учитывать, что утилиты могут отображать несколько значений, содержащихся в поле RAW этого атрибута, как одно, и оно будет выглядеть весьма большим, хоть это и будет неверно (подробности см. ниже).

На дисках Seagate, Samsung (SpinPoint F1 и новее) и Fujitsu на этот атрибут можно не обращать внимания.

Атрибут: 02 Throughput Performance

Параметр не даёт никакой информации пользователю и не говорит ни о какой опасности при любом своём значении.

Атрибут: 03 Spin-Up Time

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

Кстати, винчестеры Fujitsu всегда имеют единицу в этом поле в случае отсутствия проблем с раскруткой шпинделя.

Практически ничего не говорит о здоровье диска, поэтому при оценке состояния винчестера на параметр можно не обращать внимания.

Атрибут: 04 Number of Spin-Up Times (Start/Stop Count)

При оценке здоровья не обращайте на атрибут внимания.

Атрибут: 05 Reallocated Sector Count

Поясним, что вообще такое «переназначенный сектор». Когда диск в процессе работы натыкается на нечитаемый/плохо читаемый/незаписываемый/плохо записываемый сектор, он может посчитать его невосполнимо повреждённым. Специально для таких случаев производитель предусматривает на каждом диске (на каких-то моделях — в центре (логическом конце) диска, на каких-то — в конце каждого трека и т. д.) резервную область. При наличии повреждённого сектора диск помечает его как нечитаемый и использует вместо него сектор в резервной области, сделав соответствующие пометки в специальном списке дефектов поверхности — G-list. Такая операция по назначению нового сектора на роль старого называется remap (ремап) либо переназначение , а используемый вместо повреждённого сектор — переназначенным . Новый сектор получает логический номер LBA старого, и теперь при обращении ПО к сектору с этим номером (программы же не знают ни о каких переназначениях!) запрос будет перенаправляться в резервную область.

Таким образом, хоть сектор и вышел из строя, объём диска не изменяется. Понятно, что не изменяется он до поры до времени, т. к. объём резервной области не бесконечен. Однако резервная область вполне может содержать несколько тысяч секторов, и допустить, чтобы она закончилась, будет весьма безответственно — диск нужно будет заменить задолго до этого.

Кстати, ремонтники говорят, что диски Samsung очень часто ни в какую не хотят выполнять переназначение секторов.

На счёт этого атрибута мнения разнятся. Лично я считаю, что если он достиг 10, диск нужно обязательно менять — ведь это означает прогрессирующий процесс деградации состояния поверхности либо блинов, либо головок, либо чего-то ещё аппаратного, и остановить этот процесс возможности уже нет. Кстати, по сведениям лиц, приближенных к Hitachi, сама Hitachi считает диск подлежащим замене, когда на нём находится уже 5 переназначенных секторов. Другой вопрос, официальная ли эта информация, и следуют ли этому мнению сервис-центры. Что-то мне подсказывает, что нет:)

Другое дело, что сотрудники сервис-центров могут отказываться признавать диск неисправным, если фирменная утилита производителя диска пишет что-то вроде «S.M.A.R.T. Status: Good» или значения Value либо Worst атрибута будут больше Threshold (собственно, по такому критерию может оценивать и сама утилита производителя). И формально они будут правы. Но кому нужен диск с постоянным ухудшением его аппаратных компонентов, даже если такое ухудшение соответствует природе винчестера, а технология производства жёстких дисков старается минимизировать его последствия, выделяя, например, резервную область?

Атрибут: 07 Seek Error Rate

Описание формирования этого атрибута почти полностью совпадает с описанием для атрибута 01 Raw Read Error Rate, за исключением того, что для винчестеров Hitachi нормальным значением поля RAW является только 0.

Таким образом, на атрибут на дисках Seagate, Samsung SpinPoint F1 и новее и Fujitsu 2,5″ не обращайте внимания, на остальных моделях Samsung, а также на всех WD и Hitachi ненулевое значение свидетельствует о проблемах, например, с подшипником и т. п.

Атрибут: 08 Seek Time Performance

Не даёт никакой информации пользователю и не говорит ни о какой опасности при любом своём значении.

Атрибут: 09 Power On Hours Count (Power-on Time)

Ничего не говорит о здоровье диска.

Атрибут: 10 (0А — в шестнадцатеричной системе счисления) Spin Retry Count

О здоровье диска чаще всего не говорит.

Основные причины увеличения параметра — плохой контакт диска с БП или невозможность БП выдать нужный ток в линию питания диска.

В идеале должен быть равен 0. При значении атрибута, равном 1-2, внимания можно не обращать. Если значение больше, в первую очередь следует обратить пристальное внимание на состояние блока питания, его качество, нагрузку на него, проверить контакт винчестера с кабелем питания, проверить сам кабель питания.

Наверняка диск может стартовать не сразу из-за проблем с ним самим, но такое бывает очень редко, и такую возможность нужно рассматривать в последнюю очередь.

Атрибут: 11 (0B) Calibration Retry Count (Recalibration Retries)

Ненулевое, а особенно растущее значение параметра может означать проблемы с диском.

Атрибут: 12 (0C) Power Cycle Count

Не связан с состоянием диска.

Атрибут: 183 (B7) SATA Downshift Error Count

Не говорит о здоровье накопителя.

Атрибут: 184 (B8) End-to-End Error

Ненулевое значение указывает на проблемы с диском.

Атрибут: 187 (BB) Reported Uncorrected Sector Count (UNC Error)

Ненулевое значение атрибута явно указывает на ненормальное состояние диска (в сочетании с ненулевым значением атрибута 197) или на то, что оно было таковым ранее (в сочетании с нулевым значением 197).

Атрибут: 188 (BC) Command Timeout

Такие ошибки могут возникать из-за плохого качества кабелей, контактов, используемых переходников, удлинителей и т. д., а также из-за несовместимости диска с конкретным контроллером SATA/РАТА на материнской плате (либо дискретным). Из-за ошибок такого рода возможны BSOD в Windows.

Ненулевое значение атрибута говорит о потенциальной «болезни» диска.

Атрибут: 189 (BD) High Fly Writes

Для того чтобы сказать, почему происходят такие случаи, нужно уметь анализировать логи S.M.A.R.T., которые содержат специфичную для каждого производителя информацию, что на сегодняшний день не реализовано в общедоступном ПО — следовательно, на атрибут можно не обращать внимания.

Атрибут: 190 (BE) Airflow Temperature

Не говорит о состоянии диска.

Атрибут: 191 (BF) G-Sensor Shock Count (Mechanical Shock)

Актуален для мобильных винчестеров. На дисках Samsung на него часто можно не обращать внимания, т. к. они могут иметь очень чувствительный датчик, который, образно говоря, реагирует чуть ли не на движение воздуха от крыльев пролетающей в одном помещении с диском мухи.

Вообще срабатывание датчика не является признаком удара. Может расти даже от позиционирования БМГ самим диском, особенно если его не закрепить. Основное назначение датчика — прекратить операцию записи при вибрациях, чтобы избежать ошибок.

Не говорит о здоровье диска.

Атрибут: 192 (С0) Power Off Retract Count (Emergency Retry Count)

Не позволяет судить о состоянии диска.

Атрибут: 193 (С1) Load/Unload Cycle Count

Не говорит о здоровье диска.

Атрибут: 194 (С2) Temperature (HDA Temperature, HDD Temperature)

О состоянии диска атрибут не говорит, но позволяет контролировать один из важнейших параметров. Моё мнение: при работе старайтесь не допускать повышения температуры винчестера выше 50 градусов, хоть производителем обычно и декларируется максимальный предел температуры в 55-60 градусов.

Атрибут: 195 (С3) Hardware ECC Recovered

Особенности, присущие этому атрибуту на разных дисках, полностью соответствуют таковым атрибутов 01 и 07.

Атрибут: 196 (С4) Reallocated Event Count

Косвенно говорит о здоровье диска. Чем больше значение — тем хуже. Однако нельзя однозначно судить о здоровье диска по этому параметру, не рассматривая другие атрибуты.

Этот атрибут непосредственно связан с атрибутом 05. При росте 196 чаще всего растёт и 05. Если при росте атрибута 196 атрибут 05 не растёт, значит, при попытке ремапа кандидат в бэд-блоки оказался софт-бэдом (подробности см. ниже), и диск исправил его, так что сектор был признан здоровым, и в переназначении не было необходимости.

Если атрибут 196 меньше атрибута 05, значит, во время некоторых операций переназначения выполнялся перенос нескольких повреждённых секторов за один приём.

Если атрибут 196 больше атрибута 05, значит, при некоторых операциях переназначения были обнаружены исправленные впоследствии софт-бэды.

Атрибут: 197 (С5) Current Pending Sector Count

Натыкаясь в процессе работы на «нехороший» сектор (например, контрольная сумма сектора не соответствует данным в нём), диск помечает его как кандидат на переназначение, заносит его в специальный внутренний список и увеличивает параметр 197. Из этого следует, что на диске могут быть повреждённые секторы, о которых он ещё не знает — ведь на пластинах вполне могут быть области, которые винчестер какое-то время не использует.

При попытке записи в сектор диск сначала проверяет, не находится ли этот сектор в списке кандидатов. Если сектор там не найден, запись проходит обычным порядком. Если же найден, проводится тестирование этого сектора записью-чтением. Если все тестовые операции проходят нормально, то диск считает, что сектор исправен. (Т. е. был т. н. «софт-бэд» — ошибочный сектор возник не по вине диска, а по иным причинам: например, в момент записи информации отключилось электричество, и диск прервал запись, запарковав БМГ. В итоге данные в секторе окажутся недописанными, а контрольная сумма сектора, зависящая от данных в нём, вообще останется старой. Налицо будет расхождение между нею и данными в секторе.) В таком случае диск проводит изначально запрошенную запись и удаляет сектор из списка кандидатов. При этом атрибут 197 уменьшается, также возможно увеличение атрибута 196.

Если же тестирование заканчивается неудачей, диск выполняет операцию переназначения, уменьшая атрибут 197, увеличивая 196 и 05, а также делает пометки в G-list.

Итак, ненулевое значение параметра говорит о неполадках (правда, не может сказать о том, в само́м ли диске проблема).

При ненулевом значении нужно обязательно запустить в программах Victoria или MHDD последовательное чтение всей поверхности с опцией remap . Тогда при сканировании диск обязательно наткнётся на плохой сектор и попытается произвести запись в него (в случае Victoria 3.5 и опции Advanced remap — диск будет пытаться записать сектор до 10 раз). Таким образом программа спровоцирует «лечение» сектора, и в итоге сектор будет либо исправлен, либо переназначен.

В случае неудачи чтения как с remap , так и с Advanced remap , стоит попробовать запустить последовательную запись в тех же Victoria или MHDD. Учитывайте, что операция записи стирает данные, поэтому перед её применением обязательно делайте бэкап!

Иногда от невыполнения ремапа могут помочь следующие манипуляции: снимите плату электроники диска и почистите контакты гермоблока винчестера, соединяющие его с платой — они могут быть окислены. Будь аккуратны при выполнении этой процедуры — из-за неё можно лишиться гарантии!

Невозможность ремапа может быть обусловлена ещё одной причиной — диск исчерпал резервную область, и ему просто некуда переназначать секторы.

Если же значение атрибута 197 никакими манипуляциями не снижается до 0, следует думать о замене диска.

Атрибут: 198 (С6) Offline Uncorrectable Sector Count (Uncorrectable Sector Count)

Параметр этот изменяется только под воздействием оффлайн-тестирования, никакие сканирования программами на него не влияют. При операциях во время самотестирования поведение атрибута такое же, как и атрибута 197.

Ненулевое значение говорит о неполадках на диске (точно так же, как и 197, не конкретизируя, кто виноват).

Атрибут: 199 (С7) UltraDMA CRC Error Count

В подавляющем большинстве случаев причинами ошибок становятся некачественный шлейф передачи данных, разгон шин PCI/PCI-E компьютера либо плохой контакт в SATA-разъёме на диске или на материнской плате/контроллере.

Ошибки при передаче по интерфейсу и, как следствие, растущее значение атрибута могут приводить к переключению операционной системой режима работы канала, на котором находится накопитель, в режим PIO, что влечёт резкое падение скорости чтения/записи при работе с ним и загрузку процессора до 100% (видно в Диспетчере задач Windows).

В случае винчестеров Hitachi серий Deskstar 7К3000 и 5К3000 растущий атрибут может говорить о несовместимости диска и SATA-контроллера. Чтобы исправить ситуацию, нужно принудительно переключить такой диск в режим SATA 3 Гбит/с.

Моё мнение: при наличии ошибок — переподключите кабель с обоих концов; если их количество растёт и оно больше 10 — выбрасывайте шлейф и ставьте вместо него новый или снимайте разгон.

Атрибут: 200 (С8) Write Error Rate (MultiZone Error Rate)

Атрибут: 202 (СА) Data Address Mark Error

Атрибут: 203 (CB) Run Out Cancel

Влияние на здоровье неизвестно.

Атрибут: 220 (DC) Disk Shift

Влияние на здоровье неизвестно.

Атрибут: 240 (F0) Head Flying Hours

Влияние на здоровье неизвестно.

Атрибут: 254 (FE) Free Fall Event Count

Влияние на здоровье неизвестно.

Подытожим описание атрибутов. Ненулевые значения :

При анализе атрибутов учитывайте, что в некоторых параметрах S.M.A.R.T. могут храниться несколько значений этого параметра: например, для предпоследнего запуска диска и для последнего. Такие параметры длиной в несколько байт логически состоят из нескольких значений длиной в меньшее количество байт — например, параметр, хранящий два значения для двух последних запусков, под каждый из которых отводится 2 байта, будет иметь длину 4 байта. Программы, интерпретирующие S.M.A.R.T., часто не знают об этом, и показывают этот параметр как одно число, а не два, что иногда приводит к путанице и волнению владельца диска. Например, «Raw Read Error Rate», хранящий предпоследнее значение «1» и последнее значение «0», будет выглядеть как 65536.

Надо отметить, что не все программы умеют правильно отображать такие атрибуты. Многие как раз и переводят атрибут с несколькими значениями в десятичную систему счисления как одно огромное число. Правильно же отображать такое содержимое — либо с разбиением по значениям (тогда атрибут будет состоять из нескольких отдельных чисел), либо в шестнадцатеричной системе счисления (тогда атрибут будет выглядеть как одно число, но его составляющие будут легко различимы с первого взгляда), либо и то, и другое одновременно. Примерами правильных программ служат HDDScan, CrystalDiskInfo, Hard Disk Sentinel.

Продемонстрируем отличия на практике. Вот так выглядит мгновенное значение атрибута 01 на одном из моих Hitachi HDS721010CLA332 в неучитывающей особенности этого атрибута Victoria 4.46b:

А так выглядит он же в «правильной» HDDScan 3.3:

Плюсы HDDScan в данном контексте очевидны, не правда ли?

Если анализировать S.M.A.R.T. на разных дисках, то можно заметить, что одни и те же атрибуты могут вести себя по-разному. Например, некоторые параметры S.M.A.R.T. винчестеров Hitachi после определённого периода неактивности диска обнуляются; параметр 01 имеет особенности на дисках Hitachi, Seagate, Samsung и Fujitsu, 03 — на Fujitsu. Также известно, что после перепрошивки диска некоторые параметры могут установиться в 0 (например, 199). Однако подобное принудительное обнуление атрибута ни в коем случае не будет говорить о том, что проблемы с диском решены (если таковые были). Ведь растущий критичный атрибут — это следствие неполадок, а не причина .

При анализе множества массивов данных S.M.A.R.T. становится очевидным, что набор атрибутов у дисков разных производителей и даже у разных моделей одного производителя может отличаться. Связано это с так называемыми специфичными для конкретного вендора (vendor specific) атрибутами (т. е. атрибутами, используемыми для мониторинга своих дисков определённым производителем) и не должно являться поводом для волнения. Если ПО мониторинга умеет читать такие атрибуты (например, Victoria 4.46b), то на дисках, для которых они не предназначены, они могут иметь «страшные» (огромные) значения, и на них просто не нужно обращать внимания. Вот так, например, Victoria 4.46b отображает RAW-значения атрибутов, не предназначенных для мониторинга у Hitachi HDS721010CLA332:

Нередко встречается проблема, когда программы не могут считать S.M.A.R.T. диска. В случае исправного винчестера это может быть вызвано несколькими факторами. Например, очень часто не отображается S.M.A.R.T. при подключении диска в режиме AHCI. В таких случаях стоит попробовать разные программы, в частности HDD Scan, которая обладает умением работать в таком режиме, хоть у неё и не всегда это получается, либо же стоит временно переключить диск в режим совместимости с IDE, если есть такая возможность. Далее, на многих материнских платах контроллеры, к которым подключаются винчестеры, бывают не встроенными в чипсет или южный мост, а реализованы отдельными микросхемами. В таком случае DOS-версия Victoria, например, не увидит подключённый к контроллеру жёсткий диск, и ей нужно будет принудительно указывать его, нажав клавишу [Р] и введя номер канала с диском. Часто не читаются S.M.A.R.T. у USB-дисков, что объясняется тем, что USB-контроллер просто не пропускает команды для чтения S.M.A.R.T. Практически никогда не читается S.M.A.R.T. у дисков, функционирующих в составе RAID-массива. Здесь тоже есть смысл попробовать разные программы, но в случае аппаратных RAID-контроллеров это бесполезно.

Если после покупки и установки нового винчестера какие-либо программы (HDD Life, Hard Drive Inspector и иже с ними) показывают, что: диску осталось жить 2 часа; его производительность — 27%; здоровье — 19,155% (выберите по вкусу) — то паниковать не стоит. Поймите следующее. Во-первых, нужно смотреть на показатели S.M.A.R.T., а не на непонятно откуда взявшиеся числа здоровья и производительности (впрочем, принцип их подсчёта понятен: берётся наихудший показатель). Во-вторых, любая программа при оценке параметров S.M.A.R.T. смотрит на отклонение значений разных атрибутов от предыдущих показаний. При первых запусках нового диска параметры непостоянны, необходимо некоторое время на их стабилизацию. Программа, оценивающая S.M.A.R.T., видит, что атрибуты изменяются, производит расчёты, у неё получается, что при их изменении такими темпами накопитель скоро выйдет из строя, и она начинает сигнализировать: «Спасайте данные!» Пройдёт некоторое время (до пары месяцев), атрибуты стабилизируются (если с диском действительно всё в порядке), утилита наберёт данных для статистики, и сроки кончины диска по мере стабилизации S.M.A.R.T. будут переноситься всё дальше и дальше в будущее. Оценка программами дисков Seagate и Samsung — вообще отдельный разговор. Из-за особенностей атрибутов 1, 7, 195 программы даже для абсолютно здорового диска обычно выдают заключение, что он завернулся в простыню и ползёт на кладбище.

Обратите внимание, что возможна следующая ситуация: все атрибуты S.M.A.R.T. — в норме, однако на самом деле диск — с проблемами, хоть этого пока ни по чему не заметно. Объясняется это тем, что технология S.M.A.R.T. работает только «по факту», т. е. атрибуты меняются только тогда, когда диск в процессе работы встречает проблемные места. А пока он на них не наткнулся, то и не знает о них и, следовательно, в S.M.A.R.T. ему фиксировать нечего.

Таким образом, S.M.A.R.T. — это полезная технология, но пользоваться ею нужно с умом. Кроме того, даже если S.M.A.R.T. вашего диска идеален, и вы постоянно устраиваете диску проверки — не полагайтесь на то, что ваш диск будет «жить» ещё долгие годы. Винчестерам свойственно ломаться так быстро, что S.M.A.R.T. просто не успевает отобразить его изменившееся состояние, а бывает и так, что с диском — явные нелады, но в S.M.A.R.T. — всё в порядке. Можно сказать, что хороший S.M.A.R.T. не гарантирует, что с накопителем всё хорошо, но плохой S.M.A.R.T. гарантированно свидетельствует о проблемах . При этом даже с плохим S.M.A.R.T. утилиты могут показывать, что состояние диска — «здоров», из-за того, что критичными атрибутами не достигнуты пороговые значения. Поэтому очень важно анализировать S.M.A.R.T. самому, не полагаясь на «словесную» оценку программ.

Хоть технология S.M.A.R.T. и работает, винчестеры и понятие «надёжность» настолько несовместимы, что принято считать их просто расходным материалом. Ну, как картриджи в принтере. Поэтому во избежание потери ценных данных делайте их периодическое резервное копирование на другой носитель (например, другой винчестер). Оптимально делать две резервные копии на двух разных носителях, не считая винчестера с оригинальными данными. Да, это ведёт к дополнительным затратам, но поверьте: затраты на восстановление информации со сломавшегося HDD обойдутся вам в разы — если не на порядок-другой — дороже. А ведь данные далеко не всегда могут восстановить даже профессионалы. Т. е. единственная возможность обеспечить надёжное хранение ваших данных — это делать их бэкап.

Напоследок упомяну некоторые программы, которые хорошо подходят для анализа S.M.A.R.T. и тестирования винчестеров: HDDScan (Windows, DOS, бесплатная), MHDD (DOS, бесплатная).

Привет всем! В прошлой статье мы рассмотрели . А сегодня мы рассмотрим как посмотреть здоровье жесткого диска, например для того, чтобы знать что с ним в ближайшее время ничего не случится. Ну или случилось и вы ещё успеваете сохранить данные.

Для начала скачиваем бесплатную программу:

Запускаем и:

  1. Выбираем диск, здоровье которого вы хотите проверить
  2. Далее нажимаем на лупу
  3. И жмем SMART

В ячейке Attribute Name название smart теста. Более подробную информацию вы можете узнать в файле, нажав на кнопку скачать. Это информация с википедии. Так же в файле будет указаны критические названия и несущественные. Если у вас критические наименования превысили норму, то задумайтесь о смене жесткого диска.

Она русская и менее функциональная.

Так же и обращаем внимание на температуру. Я вот делал эксперимент по этому поводу, ssd стоит у меня на боковой стенке (у корпуса zalman есть специальное крепление), а второй жесткий диск на своем месте, да ещё и впереди стоит кулер, который дополнительно его охлаждает. Так вот, с кулером и без, разница в 4 градуса. Так что я буду ssd переставлять ближе к кулеру. Ведь когда выходит жесткий диск из строя, первая причина это температура.

Критические значения

Особое внимание уделите следующим параметрам:

  • 01 (01) Raw Read Error Rate (ошибки чтения) - на сколько часто появляются ошибки при чтении с диска данных.
  • 03 (03) Spin-Up Time (время раскрутки) - на сколько быстро раскрутится пластина из состояния покоя, до рабочего состояния.
  • 05 (05) Reallocated Sectors Count (переназначенные сектора) - количество переназначенных секторов. Если количество переназначенных секторов закончится, то появятся .
  • 07 (07) Seek Error Rate (ошибки позиционирования) - если головка становится не точно на дорожку, это свидетельствует о повреждении механики. Причиной этого может быть перегрев. Чем чаще головка не попадает на дорожку, тем выше значение.
  • 10 (0A) Spin-Up Retry Count (повторные попытки раскрутки) - так же при неисправности механики. Ошибка появляется, когда диск не может раскрутится до рабочей скорости.
  • 196 (C4) Reallocation Event Count (события переназначения) - на сколько много производилось переназначение битых секторов на резервные.
  • 197 (C5) Current Pending Sector Count (нестабильные сектора) - на сколько много секторов претендентов на переназначения. Эти сектора ещё не являются битыми, но у них слабый отклик.
  • 198 (C6) Uncorrectable Sector Count (неисправные ошибки секторов) - из-за поврежденной механики, показывает количество неудачных раз чтения секторов.
  • 220 (DC) Disk Shift (сдвиг диска) - из-за удара, пластины могут быть сбиты с оси.

На этом все. Не критические ошибки и описание вы найдете скачав в документе выше. Вот таким образом можно проверить здоровье жесткого диска с помощью этих 2х программ. А какой пользоваться, вам решать.

Все современные накопители на жестких магнитных дисках поддерживают технологию самотестирования, анализа состояния, и накопления статистических данных об ухудшении собственных характеристик S.M.A.R.T. (Self-Monitoring Analysis and Reporting Technology). Основы S.M.A.R.T. были разработаны в 1995 г. совместными усилиями ведущих производителями жестких дисков. В процессе совершенствования оборудования накопителей, возможности технологии также дорабатывались, и после стандарта SMART появился SMART II, затем - SMART III, который, очевидно, тоже не станет последним.

Жесткий диск в процессе своего функционирования постоянно отслеживает определенные параметры своего состояния и отражает их в специальных характеристиках - атрибутах (Attribute), сохраняющихся, как правило, в специально выделенной части дисковой поверхности, доступной только внутренней микропрограмме накопителя - служебной зоне . Данные атрибутов могут быть считаны специальным программным обеспечением.

Атрибуты идентифицируются своим цифровым номером, большинство из которых одинаково интерпретируется накопителями разных моделей. Некоторые атрибуты могут быть определены конкретным производителем оборудования, и поддерживаться только отдельными моделями накопителей.

Атрибуты состоят из нескольких полей, каждое из которых имеет определенный смысл. Обычно, программы считывания S.M.A.R.T. выдают расшифровку атрибутов в виде:

  1. Attribute - имя атрибута
  2. ID - идентификатор атрибута
  3. Value - текущее значение атрибута
  4. Threshold - минимальное пороговое значения атрибута
  5. Worst - самое низкое значение атрибута за все время работы накопителя
  6. Raw - абсолютное значение атрибута
  7. Type (необязательно) - тип атрибута - характеризует производительность (PR - Performance-related), характеризует сбои (ER - Error rate), счетчик событий (EC - Events count), определено производителем или не используется (SP - Self-preserve);

Для анализа состояния накопителя, пожалуй, самым важным значением атрибута является Value - условное число (обычно от 0 до 100 или до 253), заданное производителем. Значение Value изначально установлено на максимум при производстве накопителя и уменьшается в случае ухудшения его параметров.

Для каждого атрибута существует пороговое значение, до достижения которого, производитель гарантирует его работоспособность - поле Threshold . Если значение Value приближается или становится меньше значения Threshold, - накопитель пора менять. Перечень атрибутов и их значения жестко не стандартизированы и определяются изготовителем накопителя, но наиболее важные из них интерпретируются одинаково.

Например, атрибут с идентификатором 5 (Reallocated sector count ) будет характеризовать число забракованных и переназначенных из резервной области секторов диска, и для устройств производства компании Seagate, и для Western Digital, Samsung, Maxtor.

Жесткий диск не имеет возможности, по собственной инициативе, передать данные SMART потребителю. Их считывание выполняется специальным программным обеспечением.

В настройках большинства современных BIOS материнских плат имеется пункт позволяющий запретить или разрешить считывание и анализ атрибутов SMART в процессе выполнения тестов оборудования перед выполнением начальной загрузки системы. Включение опции позволяет подпрограмме тестирования оборудования BIOS считать значения критических атрибутов и, при превышении порога, предупредить об этом пользователя. Как правило, без особой детализации:

Primary Master Hard Disk: S.M.A.R.T status BAD!, Backup and Replace.

Выполнение подпрограммы BIOS приостанавливается, чтобы привлечь внимание:

Таким образом, без установки или запуска дополнительного программного обеспечения, имеется возможность вовремя определить критическое состояние накопителя (при включении данной опции) средствами Базовой Системы Ввода-Вывода (BIOS).

Анализ данных S.M.A.R.T. жесткого диска

Для получения данных SMART в среде операционной системы могут использоваться специальные программы, в частности, практически все утилиты для тестирования оборудования жестких дисков.

Одной из самых популярных программ для тестирования жестких дисков является Victoria Сергея Казанского. На сайте автора найдете последнюю версию программы, а также массу полезной информации, в том числе и подробное описание работы с Victoria.

Программа Victoria имеет две разновидности - для работы в среде DOS и, для работы в среде Windows. DOS-версия может напрямую работать с контроллером жесткого диска и обладает значительно большими возможностями по сравнению с версией для Windows. Назначение, основные возможности и порядок использования программы раньше можно было найти на сайте автора , но с некоторых пор сайт заброшен и информации там нет.

Программа проста в использовании и позволяет оценить техническое состояние накопителя, выполнить его тестирование и некоторые настройки - уровня шума, производительности, физического объема. Режимы тестирования поверхности накопителя позволяют принудительно избавиться от сбойных секторов с помощью режима Remap нескольких видов. Вызов меню тестирования выполняется по нажатию клавиши F4 (SCAN ). Пользователь имеет возможность задать область тестирования:

  • Start LBA:0 - начало области (по умолчанию - 0)
  • End LBA:14680064 - конец области (по умолчанию - номер последнего блока диска)

Режим тестирования:

  • Линейное чтение - последовательное чтение от начального блока до конечного;
  • Случайное чтение - номер считываемого блока формируется случайным образом;
  • BUTTERFLY чтение - выполняется чтение блоков, начиная от граничных номеров (начала и конца), к центру области тестирования. Изменение режима выполняется по нажатию клавиши "пробел".

Режим обработки ошибок . Этот пункт позволяет выполнить скрытие дефектных блоков, с использованием переназначения (ремап) из резервной области. Выбор режима выполняется клавишей "пробел". Выбранный метод работы с дефектами отображается в правом верхнем углу экрана, под часами, а также в нижней строке в момент запуска теста. Изменить режим можно в и в процессе выполнения сканирования.

  • Ignore Bad Blocks - программа не будет выполнять никаких действий при обнаружении ошибки.
  • BB = RESTORE DATA - программа попытается восстановить данные из поврежденных секторов.
  • BB = Classic REMAP - выполняется запись в поврежденный сектор для вызова процедуры переназначения.
  • BB = Advanced REMAP - улучшенный алгоритм скрытия сбойных блоков. Используется, когда не помогает классический ремап. Программа выполняет специальную последовательность операций с целью формирования признака кандидата на ремап (атрибут 197) у сбойного блока. Затем выполняется 10-кратная запись, обрабатываемая микропрограммой накопителя как обычная обработка кандидата на ремап - если есть ошибка, выполняется переназначение, если нет ошибки - блок считается нормальным и удаляется из кандидатов на ремап. Данный режим позволяет выполнить скрытие сбойных блоков без потери пользовательских данных. Конечно, только в случаях, когда накопитель технически исправен и есть свободное место в резервной области для переназначения.
  • BB = Fujitsu Remap - выполнение специфических алгоритмов, основанных на недокументированных возможностях некоторых моделей накопителей Fujitsu
  • BB = Erase 256 sect - при обнаружении сбойного сектора выполняется перезаписывание блока из 256 секторов. Пользовательские данные не сохраняются.

В процессе работы с программой можно вызвать контекстную справку клавишей F1

Версия Victoria For Windows обладает более скромными возможностями по настройке накопителя и выбору режимов тестирования, и на данный момент не имеет поддержки русского языка, однако ей проще пользоваться и имеющихся возможностей вполне достаточно для считывания таблицы SMART и оценки технического состояния накопителя.

Программа не требует установки, просто скачайте последнюю версию по ссылке Victoria v4.47 с нашего сайта.

Программа должна выполняться под учетной записью с павами администратора. В среде Windows 7 / 8 необходимо использовать контекстное меню “Запуск от имени администратора”.

Для анализа состояния SMART-атрибутов выбираем режим работы через программный интерфейс Windows - включаем кнопку API в правой верхней части основного окна. Затем выбираем накопитель для проверки - нажимаем на кнопку Standard в основном меню программы и подсвечиваем мышкой нужный диск в окне со списком.

В информационном окне будет отображен паспорт накопителя - модель, версию аппаратной прошивки, серийный номер, размер и т.п. Для получения данных SMART выбираем пункт меню SMART и жмем кнопку "Get SMART". Результат будет отображен в информационном окне программы.

Краткое описание атрибутов (в скобках дано шестнадцатеричное значение номера):

  • 001 (1) Raw Read Error Rate - абсолютное значение ошибок считывания. Существует некоторые отличия в формировании значения данного атрибута разными производителями. Из практики могу сказать, что накопители Seagate могут иметь гигантское значение RAW этого атрибута, реально будучи в хорошем состоянии, а накопители Western Digital могут иметь его нулевым, имея критические показатели по другим характеристикам. Некоторые модели вообще могут не поддерживать данный атрибут.
  • 003 (3) Spin Up Time - Среднее время раскрутки шпинделя диска от 0 RPM до рабочей скорости.
  • 004 (4) Start/Stop Count - Количество циклов запуск/останов шпинделя.
  • 005 (5) Reallocated Sector Count - Количество переназначенных секторов. Современные накопители имеют довольно большую (тысячи секторов) резервную область поверхности накопителя для использования ее в случае ухудшения характеристик секторов из основной зоны. Если накопитель обнаруживает проблемы с записью/считыванием какого - либо сектора, то он автоматически перемещает его данные в резервную область, а данный сектор помечается как "переназначенный". Часто этот процесс называют "remapping", или "automatic defect reassignment", он выполняется микропрограммой накопителя и для пользователя (операционной системы) невидим. Поле raw value содержит общее количество переназначенных секторов. Даже некритическое, но большое значение этого поля, может привести к снижению скорости обмена данными, поскольку накопитель выполняет дополнительную операцию установки головок на дорожки резервной области, обычно расположенной в конце диска.
  • 007 (7) Seek Error Rate - Частота появления ошибок позиционирования блока магнитных головок (БМГ) . Накопитель контролирует правильность установки головок на требуемую дорожку поверхности. В случае, когда установка выполнилась неверно, фиксируется ошибка и операция повторяется. Для данного накопителя причиной большого числа ошибок явился перегрев.
  • 008 (8) Seek Time Performance - средняя скорость позиционирования магнитных головок. Если значение атрибута уменьшается (замедление позиционирования), то велика вероятность проблем с механической частью привода головок.
  • 009 (9) Power-On Hours - Количество часов во включенном состоянии. Достижение предельного значения этого атрибута означает выработку накопителем заданной производителем наработки на отказ (MTBF - Mean Time Between Failures).
  • 010 (0A) Spin Retry Count - Количество повторных попыток старта шпинделя. После включения питания, накопитель раскручивает диски и контролирует достижение рабочей скорости вращения для данного устройства (например 5400 , 7200, 10000 об/мин.) за определенное время. В случае неудачи - увеличивается счетчик повторов и повторяется попытка старта.
  • 011 (0B) Recalibration Retries - количество попыток рекалибровки, в случае, если первая попытка была неудачной. Если значение атрибута увеличивается, то велика вероятность проблем с механической частью накопителя. Кроме того, увеличение абсолютного значения данного атрибута может быть вызвано тем, что процедура рекалибровки используется внутренней микропрограммой накопителя для коррекции других типов ошибок.
  • 012 (0C) Device Power Cycle Count - Количество циклов включения/выключения диска.
  • 184 (B8) End-to-End error - Данный атрибут - часть технологии HP SMART IV - означает, что после передачи данных через буферную память чётность данных между контроллером компьютера и жестким диском не совпадает.
  • 187 (BB) Reported Uncorrectable Error - Характеризует количество ошибок, которые не были исправлены микропрограммой накопителя.
  • 188 (BC) Command Timeout Количество прерванных операций в связи с HDD тайм-аут. Обычно это значение атрибута должно быть равно нулю, и, если значение гораздо выше нуля, то, скорее всего, там будут какие-то серьезные проблемы с питанием или окислением контактов интерфейсного кабеля.
  • 189 (BD) High Fly Writes - Если высота полета головки над магнитной поверхностью, даже на короткое время превысит оптимальную, то записанные ею данные, в дальнейшем, могут не прочитаться. Современные накопители используют специально разработанную технологию контроля высоты полета головок, позволяющую не выполнять запись данных при неоптимальной высоте. В счетчик данного атрибута добавляется единица, а запись выполняется после установки нормальной высоты полета. Повышенное значение данного атрибута может быть вызвано внешними ударами или вибрациями, ненормальной температурой, ухудшением характеристик магнитной поверхности или головки.
  • 190 (BE) Airflow Temperature - температура окружающей среды блока магнитных головок. Для большинства моделей данный атрибут отсутствует и используется атрибут 194.
  • 191 (BF) G-sense error rate - количество ошибок, возникающих в результате ударных нагрузок. Атрибут хранит показания встроенного акселерометра, который фиксирует все удары, толчки, падения и даже неаккуратную установку диска в корпус компьютера. Обычно довольно точно характеризует условия эксплуатации ноутбуков - большое значение атрибута говорит о резких толчках и падениях при работе устройства.
  • 192 (C0) Power-off retract count - количество циклов выключений или аварийных отказов (включений/выключений питания накопителя).
  • 193 (C1) Load/Unload Cycle - количество циклов перемещения блока магнитных головок в зону парковки.
  • 194 (C2) HDA Temperature - температура самого накопителя (HDA - Hard Disk Assembly). В данном атрибуте хранятся показания встроенного температурного датчика, которым обычно служит одна из магнитных головок (как правило - нижняя). Данные, записанные в полях атрибута отображают текущую, минимальную и максимальную температуру. Поле Worst показывает наихудшую, достигнутую за время работы накопителя, температуру (можно установить факт перегрева и его степень), raw value - текущую температуру. Некоторые модели накопителей могут поддерживать атрибут 205 (CD) Thermal asperity rate (TAR) фиксирующий количество опасных перепадов температуры.
  • 195 (C3) Hardware ECC recovered - характеризует количество ошибок считывания, исправленных оборудованием накопителя с применением кода коррекции ошибок. Подобные ошибки не требуют повторного считывания сектора, и не приводят к потере скорости обмена данными, но большое их количество говорит об ухудшении параметров тракта считывания.
  • 196 (C4) Reallocation Event Count - Число событий переназначения сбойных секторов. В поле raw value данного атрибута хранится общее число попыток переноса данных из нестабильных секторов в резервную область. Учитываются как успешные, так и неуспешные попытки.
  • 197 (C5) Current Pending Sector Count - Текущее количество нестабильных секторов. Поле raw value этого атрибута показывает общее количество секторов, которые накопитель в данный момент считает кандидатами на переназначение в резервную область (remap). Если в дальнейшем какой-то из этих секторов будет прочитан успешно, то он исключается из списка кандидатов. Если же чтение сектора будет сопровождаться ошибками, то накопитель попытается восстановить данные и перенести их в резервную область, а сам сектор пометить как переназначенный (remapped).
  • 198 (C6) Uncorrectable Sector Count - Счетчик некорректируемых ошибок. Это ошибки, которые не были исправлены внутренними средствами коррекции оборудования накопителя. Может быть вызвано неисправностью отдельных элементов или отсутствием свободных секторов в резервной области диска, когда возникла необходимость переназначения.
  • 199 (C7) UltraDMA CRC Error Count - Счетчик ошибок, возникших при передаче данных в режиме UltraDMA . Аппаратные средства контроля передачи данных из накопителя в оперативную память обнаружили ошибку контрольной суммы. Нередко этот тип ошибки связан не столько с оборудованием накопителя, сколько с неисправным интерфейсным кабелем, нестабильным питанием, разгоном частоты шины PCI, перегревом микросхем чипсета материнской платы и т.п.
  • 200 (C8) Write Error Rate (Multi-Zone Error Rate) - Характеризует наличие ошибок при записи данных. Может быть вызвано ухудшением состояния поверхности, головок или характеристик тракта записи данных. Чем ниже значение Value, тем опаснее использовать такой накопитель.
  • 220 (DC) Disk Shift - смещение блока дисков относительно вертикальной оси шпинделя. В основном возникает из-за сильного удара или падения накопителя и как правило, является сигналом для его замены.
  • 228 (E4) Power-Off Retract Cycle - Количество автоматических парковок магнитных головок при выключения питания.

Современные накопители поддерживают не только формирование атрибутов S.M.A.R.T, но и ведут дополнительные журналы статистики, а также поддерживают протокол SCT (SMART Command Transport), обеспечивающий считывание данных журналов. Журнал статистики устройства - это доступный только для чтения журнал SMART, передаваемый накопителем при получении команд READ LOG EXT, READ LOG DMA EXT или SMART READ LOG. В журналах отображается информация о выполнении встроенных тестов S.M.A.R.T (self-test), статистика ошибок, номера сбойных блоков LBA и т.п.

    Современные дисковые накопители - довольно сложные устройства, выполняющие не только присущие им по их прямому назначению операции с пользовательскими данными, но и встроенные функции самоконтроля (Self-test), автономного сканирования поверхности диска с замещением ненадежных секторов из резервной области (Spare area), сбора данных о своем состоянии (Off-line data collection).
Даже если накопитель в какое-то время не используется операционной системой, он может выполнять какую-либо подпрограмму самотестирования, занимаясь внутренней диагностикой, сбором информации о состоянии оборудования и поверхности дисков. Если во время выполнения самотестирования накопитель получает команду по интерфейсу, то процесс самотестирования прерывается и накопитель приступает к обработке поступившей команды.
Кроме того, в состав команд для накопителя сейчас добавлены команды для принудительного запуска внутренних тестов (SMART EXECUTE OFF-LINE IMMEDIATE).
В процессе выполнения обычных команд накопитель также выполняет сбор и обработку данных о своем состоянии.
    Все вышеперечисленные факторы и есть основа технологии S.M.A.R.T. (Self-Monitoring Analysis and Reporting Technology). Принцип работы S.M.A.R.T. основан на том, что в процессе функционирования, винчестер отслеживает определенные параметры своего состояния и отражает их в специальных характеристиках - атрибутах (Attribute), сохраняющихся в энергонезависимой памяти накопителя (обычно в качестве такой памяти используется часть дисковой поверхности, доступная только внутренней микропрограмме накопителя - "служебная зона"). Данные атрибутов могут быть считаны специальным программным обеспечением.
    Атрибуты состоят из нескольких полей. Каждое поле имеет определенный смысл. Обычно, программы считывания S.M.A.R.T. выдают их расшифровку в виде:
  • Attribute - имя атрибута
  • ID - идентификатор атрибута
  • Value - текущее значение атрибута
  • Threshold - минимальное пороговое значения атрибута
  • Worst - самое низкое значение атрибута за все время работы накопителя
  • Raw - абсолютное значение атрибута
  • Type (необязательно) - тип атрибута - характеризует производительность (PR - Performance-related), характеризует сбои (ER - Error rate), счетчик событий (EC - Events count), определено производителем или не используется (SP - Self-preserve);


    Оценка технического состояния жесткого диска

        Для анализа состояния накопителя, пожалуй самым важным значением атрибута является Value - условное число (обычно от 0 до 100 или до 253), заданное производителем, которое изначально установлено на максимум при производстве накопителя и уменьшается в случае ухудшения его параметров. Для каждого атрибута существует предельное значение, при котором производитель гарантирует его работоспособность - поле Threshold. Если значение Value приближается или становится меньше значения Threshold, - накопитель пора менять. Перечень атрибутов и их значения жестко не стандартизированы и определяются изготовителем накопителя, но наиболее важные из них интерпретируются одинаково. Например, атрибут с идентификатором 194 будет характеризовать температуру диска, и для устройств Seagate и для WD, Samsung, Maxtor.
        В настройках большинства современных BIOS материнских плат имеется пункт позволяющий запретить или разрешить считывание и анализ атрибутов S.M.A.R.T. в процессе начальной загрузки. Иногда его ошибочно трактуют, как запрет или разрешение самой технологии SMART для дискового накопителя. Это неверно, SMART - это часть микропрограммного кода, прошитого в накопителе, часть его рабочего алгоритма, изменить который настройками BIOS невозможно. При включении этой опции, в процессе тестирования оборудования компьютера после включения питания, дополнительно выполняется еще и считывание SMART-атрибутов из накопителя, их анализ на достижение предельного значения для предупреждения пользователя о возможном скором отказе.

    Одной из самых удобных программ для тестирования жестких дисков является Victoria Сергея Казанского. Сайт Victoria SoftWare
    На сайте найдете последнюю версию программы, а также массу полезной информации, в том числе и подробное описание работы с Victoria.

    Самый же простой вариант проверки жесткого диска - HDDScan For Windows. Скачать - 416Кб.
    Это очень простая, не требующая установки или каких-либо драйверов программа.
    Скачиваете ее, распаковываете в какой-нибудь каталог и запускаете hddscan.exe.
    Основное окно программы состоит из 3-х частей:

    1. Source Disk - Здесь выбирается текущий диск для тестирования и, по нажатию кнопки "S.M.A.R.T.", выполняется считывание S.M.A.R.T.-атрибутов. Также в этом окне отображается модель накопителя (Model), версия его прошивки (Firmware), серийный номер (serial) и объем в блоках LBA (LBA)
    2. Process - кнопки для запуска и остановки теста (Start Stop), область тестирования, время тестирования, режим теста, номер текущего блока и текущая скорость передачи данных.
    3. Информационное окно - ход процесса тестирования и его результаты. Также несколько вкладок для интерпретации результатов и запуска автономных тестов S.M.A.R.T.

    Для анализа состояния S.M.A.R.T-атрибутов выбираем нужный накопитель (если их несколько) и жмем кнопку "S.M.A.R.T". Ниже приведено окно SMART-атрибутов реального накопителя. Все атрибуты находятся в пределах нормы и программа отметила этот факт зелеными индикаторами. Некоторое недоумение могут вызвать слишком большие абсолютные значения атрибутов 001, 007, 195. Это особенность дисков Seagate (и некоторых дисков Samsung) - они иначе подсчитывают значения этих параметров.


    Краткое описание атрибутов:

  • 001 Raw Read Error Rate - данный атрибут в описании на Wikipedia.org трактуется как "показывает частоту появления ошибок при операциях чтения с поверхности диска по вине аппаратной части накопителя". Но имеются некоторые сомнения в трактовке данного атрибута разными производителями, например, почти неработоспособный накопитель Western Digital из примера ниже имеет идеальное значение для данного атрибута, А накопитель Seagate из примера выше имеет raw value = 617ABEB - более 102 млн. в десятичной системе счисления).
  • 003 Spin Up Time - Среднее время раскрутки шпинделя диска от 0 RPM до рабочей скорости.
  • 004 Start/Stop Count - Количество циклов запуск/останов шпинделя.
  • 005 Reallocated Sector Count - Количество переназначенных секторов. Современные накопители имеют довольно большую (тысячи секторов) резервную область поверхности накопителя для использования ее в случае ухудшения характеристик секторов из основной зоны. Если накопитель обнаруживает проблемы с записью/считыванием какого - либо сектора, то он автоматически перемещает его данные в резервную область, а данный сектор помечается как "переназначенный". Часто этот процесс называют remapping, или automatic defect reassignment, он выполняется микропрограммой накопителя и для пользователя (операционной системы) невидим. Поле raw value содержит общее количество переназначенных секторов. Даже некритическое, но большое значение этого поля, может приводить к снижению скорости обмена данными, поскольку накопитель выполняет дополнительную операцию установки головок на дорожки резервной области, обычно расположенной в конце диска.
  • 007 Seek Error Rate - Частота появления ошибок позиционирования БМГ. Накопитель контролирует правильность установки головок на требуемую дорожку поверхности. В случае, когда установка выполнилась неверно, фиксируется ошибка и операция повторяется. Для данного накопителя причиной большого числа ошибок явился перегрев.
  • 009 Power-On Hours - Количество часов во включенном состоянии. Достижение предельного значения этого атрибута означает выработку накопителем заданной производителем наработки на отказ (MTBF - Mean Time Between Failures).
  • 010 Spin Retry Count - Количество повторных попыток старта шпинделя. После включения питания, накопитель раскручивает диски и контролирует достижение рабочей скорости вращения (для данного устройства - 7200 об/мин.) за определенное время. В случае неудачи - увеличивается счетчик повторов и повторяется попытка старта.
  • 012 Device Power Cycle Count - Количество циклов включения/выключения диска.
  • 187 Reported Uncorrectable Error - Характеризует количество ошибок, которые не были исправлены микропрограммой накопителя.
  • 189 High Fly Writes - Если высота полета головки над магнитной поверхностью, даже на короткое время превысит оптимальную, то записанные ею данные, в дальнейшем, могут не прочитаться. Современные накопители используют специально разработанную технологию контроля высоты полета головок, позволяющую не выполнять запись данных при неоптимальной высоте. В счетчик данного атрибута добавляется единица, а запись выполняется после установки нормальной высоты полета. Повышенное значение данного атрибута может быть вызвано внешними ударами или вибрациями, ненормальной температурой, ухудшением характеристик магнитной поверхности или головки.
  • 190 Airflow Temperature - температура окружающей среды. Для большинства моделей данный атрибут отсутствует и используется атрибут 194.
  • 194 HDA Temperature - температура самого накопителя. Поле Worst показывает наихудшую, достигнутую за время работы накопителя, температуру (можно установить факт перегрева и его степень), raw value - текущую температуру.
  • 195 Hardware ECC recovered - характеризует количество ошибок считывания, исправленных оборудованием накопителя с применением кода коррекции ошибок. Подобные ошибки не требуют повторного считывания сектора, и не приводят к потере скорости обмена данными, но большое их количество говорит об ухудшении параметров считывания.
  • 197 Current Pending Sector Count - Текущее количество нестабильных секторов. Поле raw value этого атрибута показывает общее количество секторов, которые накопитель в данный момент считает претендентами на переназначение в резервную область (remap). Если в дальнейшем какой-то из этих секторов будет прочитан успешно, то он исключается из списка претендентов. Если же чтение сектора будет сопровождаться ошибками, то накопитель попытается восстановить данные и перенести их в резервную область, а сам сектор пометить как переназначенный (remapped).
  • 198 Uncorrectable Sector Count - Счетчик некорректируемых ошибок. Это ошибки, исправить которые, оборудованию накопителя не удалось. Может быть вызвано отсутствием свободных секторов в резервной области диска. На практике с такой ситуацией сталкивался только однажды при проверке рассыпающегося на ходу накопителя.
  • 199 UltraDMA CRC Error Count - Счетчик ошибок, возникших при передаче данных в режиме UltraDMA . Нередко этот тип ошибки связан не с оборудованием накопителя, а с неисправным интерфейсным кабелем, нестабильным питанием, разгоном частоты шины PCI, памяти.
  • 200 Write Error Rate - Характеризует наличие ошибок при записи данных. Может быть вызвано ухудшением состояния поверхности, головок или характеристик тракта записи данных. Чем ниже значение value, тем опаснее использовать такой накопитель.

        Атрибуты отражают состояние накопителя с момента начала эксплуатации, но иногда полезно оценить его состояние на текущий момент времени. Для этого выполним тестирование поверхности с помощью HDDScan. Записываем текущие ненулевые значения Raw, и жмем кнопку "Start". По умолчанию режим тестирования выбран "Verify", возможные варианты - "Read" и "Erase". "Read" - выполняется считывание данных с передачей в оперативную память, "Verify" - то же считывание, но без передачи данных. Если вас интересует динамика ошибок UltraDMA CRC Error Count, то нужно выбрать режим "Read". Обратите внимание на то, что в процессе интенсивной работы, температура накопителя увеличивается на несколько градусов. Поэтому, если в состоянии простоя его температура равна или ненамного ниже предельной, желательно установить дополнительный вентилятор. "Erase" - выполняется стирание информации на диске, записью в каждый сектор символов "#" (код 23h). Восстановление информации после данного теста невозможно.
        Обычно тестирование заканчивается успешно, в крайнем случае, с предупреждениями. Сам факт прохождения теста еще ни о чем не говорит, чтобы оценить техническое состояние накопителя обязательно нужно учитывать показания S.M.A.R.T. Ниже приведен результат выполнения теста одного из накопителей (WD1600JB).

    В нижней правой части экрана видна статистика времени считывания блоков данных. Обратим внимание на значения более 150 ms (оранжевый и красный прямоугольники). В целом, показатели вполне приемлемые для 160 гигабайтного диска. Нужно еще учитывать и тот факт, что тестирование выполнялось в среде Windows и на время считывания могло повлиять обращение к данному устройству других программ (лучше всего подобные тесты выполнять в среде DOS, используя MHDD или Victoria).
    Но вот результат считывания атрибутов S.M.A.R.T. для данного накопителя:


    Атрибут 004 "Reallocation Sector Count" выделен красным, Value равно 001 при предельном значении Threshold = 140. Raw = 4077 или 16503 (в десятичном исчислении) переназначенных (remapped) секторов.
    Это говорит о том, что поверхность диска начала "сыпаться" или оборудование тракта записи/считывания данных работает со сбоями. Резервная область для переназначения плохих секторов исчерпана, Remapping не возможен. Такой диск вроде бы еще работает, но в любой момент могут появиться нечитаемые блоки (Bad Block), поэтому его лучше заменить, пока не поздно, сохранив информацию и нервные клетки.


    Тестирование и оценка состояния жестких дисков в Linux.

        В дистрибутиве Mandriva Linux 2009 Free имеется пакет smartmontools , содержащий 2 утилиты - smartctl и smartd
    Первая - утилита командной строки для считывания атрибутов S.M.A.R.T. и запуска некоторых встроенных тестов накопителя, вторая - демон, который периодически проверяет состояние накопителей и записывает результаты в syslog. Последнюю версию smartmontools можно взять
    Справку можно получить при использовании ключа -h или с помощью man. Пример:
    smartctl --all /dev/sda
    Результат выполнения:

    START OF INFORMATION SECTION ===
    Model Family:    Seagate Barracuda ATA IV family
    Device Model:    ST380021A
    Serial Number:    3HV3AP7L
    Firmware Version: 3.19
    Device is:    In smartctl database
    ATA Version is: 5
    ATA Standard is: Exact ATA specification draft version not indicated
    Local Time is: Fri May 15 13:50:14 2009 MSD
    SMART support is: Available - device has SMART capability.
    SMART support is: Enabled

    START OF READ SMART DATA SECTION ===
    SMART overall-health self-assessment test result: PASSED

    General SMART Values:
    Offline data collection status: (0x82) Offline data collection activity
    was completed without error.
    Auto Offline Data Collection: Enabled.
    Self-test execution status: (0) The previous self-test routine completed
    without error or no self-test has ever
    been run.
    Total time to complete Offline
    data collection: (422) seconds.
    Offline data collection
    capabilities: (0x1b) SMART execute Offline immediate.
    Auto Offline data collection on/off support.
    Suspend Offline collection upon new
    command.
    Offline surface scan supported.
    Self-test supported.
    No Conveyance Self-test supported.
    No Selective Self-test supported.
    SMART capabilities: (0x0003) Saves SMART data before entering
    power-saving mode.
    Supports SMART auto save timer.
    Error logging capability: (0x01) Error logging supported.
    No General Purpose Logging support.
    Short self-test routine
    recommended polling time: (1) minutes.
    Extended self-test routine
    recommended polling time: (57) minutes.

    SMART Attributes Data Structure revision number: 10
    Vendor Specific SMART Attributes with Thresholds:
    ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
    1    Raw_Read_Error_Rate 0x000f 075     072             034     Pre-fail         Always -                                    2958125
    3    Spin_Up_Time              0x0003 070    070             000     Pre-fail         Always -                                    0
    4    Start_Stop_Count         0x0032 100    100             020     Old_age       Always -                                    78
    5    Reallocated_Sector_Ct 0x0033 100    100 036 Pre-fail Always -                                    0
    7    Seek_Error_Rate          0x000f  080    060 030 Pre-fail Always -                                    114867925
    9    Power_On_Hours         0x0032 096    096 000 Old_age Always -                                    4175
    10 Spin_Retry_Count          0x0013 100   100 097 Pre-fail   Always -                                    0
    12 Power_Cycle_Count      0x0032 099   099 020 Old_age Always -                                    1240
    194 Temperature_Celsius    0x0022 033   052 000 Old_age Always -                                    33
    195 Hardware_ECC_Recov 0x001a 075 072 000 Old_age Always -                                    2958125
    197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always -                                    0
    198 Offline_Uncorrectable   0x0010  100 100  000 Old_age Offline -                                    0
    199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always -                                    0
    SMART Error Log Version: 1
    No Errors Logged

    SMART Self-test log structure revision number 1
    No self-tests have been logged.

    Device does not support Selective Self Tests/Logging

    Для проверки поверхности диска обычно используется команда копирования диска на /dev/null:
    dd if=/dev/sda of=/dev/null bs=16


    Пример использования терминального режима для ремонта HDD.

        Данный материал предоставляется чисто в ознакомительных целях. Работа с диском в терминальном режиме требует осторожности, определенных знаний и понимания того, что вы делаете. Даже одна единственная ошибка в команде может привести к полной неработоспособности накопителя. Если на проблемном устройстве у вас хранились бесценные данные, и у вас нет достаточного опыта - лучше обратитесь к специалистам по восстановлению информации. Начинать учиться, лучше всего, на частично неисправном накопителе, который вам не жалко выбросить.

        За основу я взял методику, описанную и
    Применяется для реанимации накопителей Seagate Barracuda 7200.11 с прошивкой SD15 производства Таиланд. Проблема заключается в ошибке прошивки SD15, приводящей к разрушению информации в служебной области накопителя и, как следствие, недоступности накопителя в BIOS или неправильного определения его объема (LBA 0). Причем сам накопитель исправен, но недоступен по интерфейсу из-за установленного сигнала занятости выполнением операции (BSY),. Пока этот сигнал активен, никакие другие сигналы интерфейса недействительны, и, следовательно, заменить прошивку с использованием фирменных утилит с сайта производителя невозможно. Для возвращения накопителя в рабочее состояние, позволяющее заменить прошивку, используется выполнение нескольких команд в терминальном режиме подключения накопителя.
        Для подключения используется стандартный последовательный порт компьютера (COM) и адаптер RS-232 - TTL, необходимый для преобразования уровней сигналов интерфейса RS-232 в уровни TTL. Схему адаптера можно легко собрать самостоятельно, но проще использовать готовый кабель - переходник, применяемый для подключения мобильного телефона к последовательному порту. За неимением "настоящего" COM-кабеля для подобного подключения, я использовал кабель USB-to-Serial, эмулирующий последовательный порт при подключении через USB с помощью драйвера Proliffic-USB-To-Serial-Com-Port (ser2pl.sys).

        Методика несложная и вполне работоспособная, но, в основном, рассчитана на применение опытными специалистами по ремонту HDD. Я постараюсь дать некоторые пояснения, которых в оригинале нет.

        Итак, кроме обычного интерфейса ATA или SATA, современные накопители имеют служебный интерфейс для подключения в терминальном режиме. На плате электроники накопителя любого производителя вы найдете кроме стандартных разъемов питания и интерфейса еще и дополнительный разъем, никак не обозначенный и имеющий не менее 3-х контактов. Это и есть разъем для подключения терминала через последовательный порт накопителя.

    Для разных моделей и для разных производителей оборудования, разъемы будут отличаться. Общее у них то, что для обмена данными используется упрощенный последовательный порт с уровнями сигнала стандарта TTL. Поэтому и необходим, при подключению к последовательному порту (COM) компьютера, адаптер, согласующий уровни сигналов RS-232 (от -12V до +12V) и TTL (от 0V до +5V). Из набора линий стандарта RS-232 используются только общий (Ground), TX для передаваемых данных и RX - для принимаемых. В качестве терминала можно использовать любой компьютер с последовательным портом и программой эмуляции терминала, обычно Hiperterminal или putty. Параметры порта (скорость, число битов, четность, количество стоп-битов) могут отличаться для разных моделей накопителей. Обычно, отличается только скорость передачи данных. А остальные - 8 бит, нет бита четности, 1 стоповый бит. Иногда параметры записывается в виде "9600, 8 ,N ,1" - скорость 9600 бит/сек, 8-битовые посылки, без бита четности с 1 стоповым битом.

    Использование Hiperterminal для подключения накопителей Seagate. Выполняете "Пуск - Программы - Стандартные - Связь - Hiper Terminal" После старта выбираете существующее или создаете новое подключение. Выбираете порт, к которому подключен накопитель

    И задаете параметры обмена для него - 9600,8,N,1 , управление потоком - Нет.
    Во многих методиках скорость обмена данными указывается 38400. Очевидно, это зависит от конкретной реализации модели накопителя. Мне попадались только работающие на скорости 9600 бит/сек. Если у вас возникнут проблемы с обменом данными накопителя и терминала, попробуйте подобрать скорость порта.

    После определения параметров последовательного порта нужно установить параметры эмуляции терминала в свойствах созданного подключения ("Файл" - "Свойства" - "Настройка" - "Параметры ASCII")

    Режим "Отображать введенные символы на экране" в дальнейшем можно будет выключить, чтобы не было удвоения вводимых с клавиатуры символов, однако на начальном этапе настройки и проверки подключения он может оказаться полезным - вы будете видеть в окне терминала вводимые вами символы.

        Убедитесь, что ваш терминал работает. Для этого соедините RX и TX между собой. При наборе с клавиатуры вы должны видеть удвоение набираемых символов, поскольку на экран терминала сначала выводится введенный символ, передаваемый по линии TX, а затем, этот же символ, принятый по линии RX. Если режим "Отображать введенные символы на экране" выключить, то удвоения символов не будет, поскольку будут отображаться только символы, принятые по линии RX.

        Убедившись в правильности работы терминала, подключите к нему жесткий диск, соединив линию передаваемых данных (выход TX накопителя) с линией принимаемых (входом RX адаптера) и наоборот - RX адаптера с TX накопителя. Если ошибетесь, - ничего страшного не случится, поменяйте контакты местами. Интерфейсный кабель (SATA или ATA) должен быть отключен.

        Если параметры порта выбраны правильно и накопитель поддерживает терминал, то, при нажатии CTRL-Z вы должны увидеть приглашение:

    F3 T>

    Символ "T" указывает уровень диагностического монитора (Diagnostic Monitor Level), на котором возможно выполнение определенных команд, в данном случае - уровень внутренних тестов и отладки. На каждом уровне используется свой набор команд, например, для уровня 1 - это команды для работы с памятью, системными переменными и т.п, для уровня 2 - команды для работы с накопителем - остановка и запуск двигателя, выполнение встроенных тестов и т.п. Уровни обозначаются цифрами или буквами. Набор уровней, и команд внутри уровня, зависят от модели накопителя. Некоторые из команд доступны на любом уровне (команда перехода на новый уровень, отображение содержимого памяти и т.п.) . Переход на нужный уровень выполняется с помощью команды:

    /номер уровня
    Например: /2 - перейти на уровень 2

        Будьте внимательны, соблюдайте синтаксис команд. Строчные и заглавные символы при работе в терминале отличаются . Многие команды выполняют запись в служебную область дискового пространства накопителя и уже поэтому, потенциально опасны.
    В моделях накопителей Seagate 7200.11 появилась возможность получить краткую подсказку по уровням и командам. Для этого нужно перейти на уровень "C"
    /C
    И ввести команду "Q"
    C> Q
    В ответ вы получите список уровней и команд, доступных для данной модели накопителя. Подсказку по конкретной команде можно получить с помощью конструкции:

    Q[уровень],[команда]

        При некоторых неисправностях, при нажатии CTRL-Z , вместо приглашения уровня T> вы можете увидеть подобное сообщение:

    LED: 000000CC FAddr: 0024A051

    Сообщение появляется с определенным интервалом и означает, что терминал заблокирован, и ввод с клавиатуры не воспринимается накопителем. Никакие команды не выполняются. Для разблокировки терминала используются несколько методик, зависящих от конкретной модели. Для семейства Barracuda 7200.11 обычно используется следующая методика:

  • Не отключая компьютер, отключается питание накопителя.
  • Отсоединяется плата электроники от контейнера. Подключается питание к плате электроники. При этом терминал разблокируется и начинает реагировать на вводимые команды. По нажатию CTRL-Z должно появиться приглашение уровня "T". Вместо опасных операций по отключению - подключению платы электроники лучше использовать тонкую пластиковую полоску, например, старый защитный экран от КПК,
  • Теперь остается только подсоединить плату электроники с разблокированным терминалом к контейнеру. Но если это сделать, без команды остановки двигателя, плата электроники может просто выгореть. Чтобы этого не случилось, выполняется переход на уровень "2"

    И вводится команда остановки двигателя - "Z".

    F3 2> Z

    О выполнении операции остановки и так остановленного двигателя вы увидите сообщение в окне терминала:
    Spin Down Complete
    Elapsed Time 0.138 msecs
    F3 2>
    После этого, осторожно, не отключая питания, плата электроники подключается к контейнеру и выполняется команда включения двигателя - "U":

    F3 2> U

    После раскручивания двигателя, увидите сообщение:

    Spin Up Complete
    Elapsed Time 7.146 secs

    Теперь накопитель готов к работе в терминальном режиме.

        Точного и, однозначно определенного, алгоритма восстановления работоспособности накопителя даже для конкретной модели найти трудно. В сети есть несколько вариантов, которые позволили авторам данных методик добиться положительного результата. Логика подсказывает, что как минимум, нужно:
    - обнулить содержимое S.M.A.R.T. Причиной разрушения транслятора, судя по всему, является ошибка в микропрограмме, связанная с обработкой этого содержимого. Иначе причина разрушения транслятора не будет устранена.
    - пересчитать содержимое транслятора заново, что вернет работоспособность накопителя.
    В некоторых методиках используется команда обнуления списка переназначенных в процессе эксплуатации секторов G-List (Grown List). Мне кажется, в случае восстановления не только работоспособности, но и целостности данных, это будет лишним, хотя, вероятность порчи транслятора в зависимости от содержимого G-List, очевидно, исключить нельзя. На практике, очистку G-List я никогда не использовал, а восстановление нескольких Barracuda 7200.11 выполнилось вполне успешно.

        Для очистки данных S.M.A.R.T нужно перейти на уровень 1

    /1
    и выполнить команду управления S.M.A.R.T (SMART Control) N . Данная команда имеет несколько подкоманд, идентифицируемых цифрой или буквой после "N" - N1 - создать SMART-сектор, N2 - обновить SMART-атрибуты, N3- выполнить обновление прошивки, N5 - выдать данные атрибутов, N7 - выполнить дамп G-List, N8 - дамп журнала критических событий, N9 - дамп содержимого P-List и т.д. Для обнуления данных SMART используется команда N1:
    F3 1> N1
    После успешного выполнения команды обязательно нужно выключить и снова включить питание накопителя. Для перегенерации транслятора используется команда форматирования (FormatPartition) "m" уровня T. В команде используется индекс раздела, для которого будет пересчитываться транслятор, m0 - пользовательский (user partition index), m1 - системный (system partition index).

    F3 T> m0,2,2,0,0,0,0,22

    Обратите внимание, в набираемой команде никаких пробелов нет. В некоторых методиках команда представлена с пробелом после первой запятой (m0, 2,2,0,0,0,0,22) - это ошибка. Значения параметров команды:

    2 - опция форматирования - 2 - информация не затирается.
    2 - опция обработки таблиц дефектов 2 - не изменять.
    0,0,0,0 - опции обработки ошибок при выполнении команды.
    22 - ключ достоверности - дополнительная защита от неправильного набора команды. Должен быть равен 22.

    Команда будет выполняться от нескольких секунд до минут. Нужно обязательно дождаться ее завершения, о чем будет выдано сообщение на терминал:
    Max Wr Retries = 00, Max Rd Retries = 00, Max ECC T-Level = 14, Max Certify Rewrite Retries = 00C8
    User Partition Format 10% complete, Zone 00, Pass 00, LBA 00004339, ErrCode 00000080, Elapsed Time 0 mins 07 secs
    User Partition Format Successful - Elapsed Time 0 mins 07 secs

    После выполнения этой команды рекомендуется остановить двигатель командой Z уровня 2 и выключить питание компьютера. Отключите терминал и подключите интерфейсный кабель к накопителю. После включения питания, если вы все сделали правильно, накопитель должен правильно определиться в BIOS. Для исключения повторения ситуации остается только взять свежую прошивку для вашей модели с сайта Seagate и записать ее в накопитель. Обычно для этого используется образ загрузочного CD (файл.iso), который записывается на болванку.


    О некоторых мифах относительно жестких дисков.

        Для устранения плохих секторов (Bad Blocks) нужно выполнить низкоуровневое форматирование (Low Level Format) . Это неверно. Низкоуровневое форматирование можно было выполнить для жестких дисков ранних моделей (с интерфейсом ST506/412). Эти устройства имели отдельную плату контроллера, для которого команда низкоуровневого форматирования (Format Track - 50h) была реализована так же, как и для дискет и представляла собой запись на каждую дорожку секторов в соответствии с геометрией диска, включающую служебную информацию - номер цилиндра, номер дорожки, номер сектора и т.п. Сектор на дорожке такого диска состоял как бы из двух частей, одна из которых содержала служебную информацию (дескриптор), и могла быть изменена только в процессе низкоуровневого форматирования, а вторая - собственно данные, изменяемые при выполнении команды записи в сектор.
        В современных дисковых устройствах внутренняя геометрия диска известна только самой микропрограмме накопителя, и кроме того, изменился формат сектора. Для увеличения полезной емкости пластин из формата сектора исключено поле идентификации (формат "id-less" или "no-id"), а сама идентификация производится не по записи в его заголовке, а по расположению сектора относительно серворазметки. Все это полностью лишило смысла стандартную операцию форматирования, и она была исключена из новых редакций ATA стандарта.
    Утилиты, свободно распространяющиеся производителями накопителей, и часто неправильно называемые программами для низкоуровневого форматирования, на самом деле таковыми не являются. Они просто позволяют перезаписать данные секторов, (обычно нулями, Zero Fill Drive Utility от Seagate), что позволяет избавиться от так называемых soft bad-ов, ошибок в данных секторов, обусловленных сбоем при записи (например, в момент записи сектора, произошло выключение питания), а не браком поверхности. Известная утилита HDD Low Level Format Tool - также, по сути, обычная стиралка пользовательских данных.
        Настоящее низкоуровневое форматирование можно выполнить только с использованием специальных технологических утилит, запускающих служебные подпрограммы, записанные в ПЗУ или в служебной зоне дисковой поверхности накопителя. Возможность запуска таких подпрограмм для обычного пользователя практически исключена, поскольку команды запуска форматирования уникальны для каждой модели накопителя и не разглашаются производителем и для их запуска может потребоваться специальное оборудование (например, программно-аппаратный комплекс PC3000, или подключение накопителя к терминалу через COM-порт).

    "Полное (Обычное)" и "Быстрое" форматирование в среде Windows отличаются тем, что при полном форматировании стирается все содержимое диска, а при быстром - только его оглавление. Удивительно, но об этом, до недавнего времени, даже было написано на сайте Microsoft. Некоторые остатки данного утверждения еще встречаются. Цитата из определения "Что такое быстрое форматирование?":
    Быстрое форматирование - это способ форматирования, при котором новая таблица файлов создается без полной перезаписи или стирания информации жесткого диска. Быстрое форматирование занимает значительно меньше времени, чем обычное форматирование, при котором происходит полное стирание всей информации жесткого диска.
    Это не так, - оглавление стирается в обоих случаях, а данные не стираются вообще. При полном форматировании сначала выполняется проверка диска чтением (как при выполнении SCANDISK"a или CHKDSK) и, только после этого, создается пустое оглавление. При быстром - пустое оглавление создается сразу, без проверки.

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

    С помощью настроек основного BIOS компьютера (пункт "HDD S.M.A.R.T. Capability", "S.M.A.R.T Monitoring" или похожий по смыслу) можно отключить поддержку S.M.A.R.T-технологии . Встречалось также утверждение, что данная опция влияет на возможность считывания атрибутов после загрузки ОС, а также приводит к некоторому снижению производительности системы. Это неверно. Никакой BIOS и никакой драйвер не имеет возможности изменить основной алгоритм работы внутренней прошивки накопителя. Более того, при работе в Windows функции BIOS для работы с жестким диском не используются. Включение опции всего лишь позволяет подпрограмме тестирования оборудования BIOS считать значения некоторых атрибутов и, при превышении порога, предупредить об этом пользователя. Как правило, без особой детализации:
    Primary Master Hard Disk: S.M.A.R.T status BAD!, Backup and Replace.
    Выполнение подпрограммы BIOS приостанавливается, чтобы привлечь внимание:
    Press F1 to Resume
    Таким образом, без установки или запуска дополнительного программного обеспечения, имеется возможность вовремя определить критическое состояние накопителя (при включении данной опции) средствами Базовой Системы Ввода-Вывода (BIOS).

    Маленький рассказ об S.M.A.R.T. атрибутах, их важности и понимании. В статье пойдет речь об расшифровке всех smart атрибутов ATA дисков. В предыдущих статьях речь шла об и . Теперь хочу немного описать атрибуты обычных АТА дисков на примере Seagate Barracuda ES.2 (ST31000340NS). Так же определим самые важные атрибуты, на которые нужно обращать внимание при мониторинге дисков используя smartctl. Для начала, можно убедиться, что наш диск поддерживает смарт

    Root@ s01:~# smartctl -i /dev/sda smartctl 5.41 2011-06-09 r3365 (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net === START OF INFORMATION SECTION === Model Family: Seagate Barracuda ES.2 Device Model: ST31000340NS Serial Number: 9QJ2ADVC … ATA Version is: 8 ATA Standard is: ATA-8-ACS revision 4 Local Time is: Fri Feb 21 16:18:35 2014 CET … SMART support is: Available - device has SMART capability. SMART support is: Enabled

    Две последние строки свидетельствуют о том, что диск поддерживает smart и можно посмотреть значение всех его атрибутов и их интерпретация будет корректной(интерпретация RAW_VALUE) . В данном случаи тип интерфейса (устройства) не указывался явно (не было указанно атрибут «-d»), по этому smartctl автоматически определил тип устройства и сказал, что «SMART support is: Enabled». Но если используются, к примеру массивы дисков (RAID контроллер), то smartctl может сказать, что смарт не поддерживается:

    Root@s06:~# smartctl -i /dev/sda smartctl 5.41 2011-06-09 r3365 (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net Vendor: SMC Product: SMC2108 Revision: 2.90 User Capacity: 2,996,997,980,160 bytes Logical block size: 512 bytes Logical Unit id: 0xSerial number: Device type: disk Local Time is: Fri Feb 21 17:32:27 2014 IST Device does not support SMART

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

    Root@s06:~# smartctl -d megaraid,14 -i /dev/sda smartctl 5.41 2011-06-09 r3365 (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net Vendor: SEAGATE Product: ST1000NM0001 Revision: 0002 User Capacity: 1,000,204,886,016 bytes Logical block size: 512 bytes Logical Unit id: 0x5000c50041080343 Serial number: Z1N0TV980000C2157TYR Device type: disk Transport protocol: SAS Local Time is: Fri Feb 21 17:34:45 2014 IST Device supports SMART and is Enabled Temperature Warning Enabled

    Также может быть проблема в версии smartctl ибо не все жесткие диски добавляются в базу SMART сразу после выхода в мир нового HDD или RAID контроллера. Или же в BIOS отключено поддержку (нужно включить). Так же может быть проблема в прошивке (firmware) самого жесткого диска. Можете также стоит для начала попытаться включить SMART командой:

    Root@s01:~# smartctl -s on /dev/sda smartctl 5.41 2011-06-09 r3365 (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net === START OF ENABLE/DISABLE COMMANDS SECTION === SMART Enabled.

    Следующая, интересующая нас часть вывода покажет суммарный результат проверки статуса здоровья диска (Если не Passed – нужно проводить замену диска). Так же выводится дополнительные характеристики диска и предполагаемое время выполнения коротких и длинных тестов.

    Root@s01:~# smartctl -Hc /dev/sda smartctl 5.41 2011-06-09 r3365 (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED General SMART Values: Offline data collection status: (0x82) Offline data collection activity was completed without error. Auto Offline Data Collection: Enabled. Self-test execution status: (41) The self-test routine was interrupted by the host with a hard or soft reset. Total time to complete Offline data collection: (634) seconds. Offline data collection capabilities: (0x7b) SMART execute Offline immediate. Auto Offline data collection on/off support. Suspend Offline collection upon new command. Offline surface scan supported. Self-test supported. Conveyance Self-test supported. Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. General Purpose Logging supported. Short self-test routine recommended polling time: (1) minutes. Extended self-test routine recommended polling time: (226) minutes. Conveyance self-test routine recommended polling time: (2) minutes. SCT capabilities: (0x003d) SCT Status supported. SCT Error Recovery Control supported. SCT Feature Control supported. SCT Data Table supported.

    В нашем случаи тип устройства определился автоматически и теперь можно вывести самое интересное — список атрибутов.

    Root@s01:~# smartctl -A /dev/sda smartctl 5.41 2011-06-09 r3365 (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net === START OF READ SMART DATA SECTION === SMART Attributes Data Structure revision number: 10 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x000f 068 059 044 Pre-fail Always - 130449727 3 Spin_Up_Time 0x0003 099 099 000 Pre-fail Always - 0 4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 23 5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 4 7 Seek_Error_Rate 0x000f 063 039 030 Pre-fail Always - 549998464474 9 Power_On_Hours 0x0032 052 052 000 Old_age Always - 42335 10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0 12 Power_Cycle_Count 0x0032 100 037 020 Old_age Always - 63 184 End-to-End_Error 0x0032 100 100 099 Old_age Always - 0 187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0 188 Command_Timeout 0x0032 100 093 000 Old_age Always - 4295032870 189 High_Fly_Writes 0x003a 100 100 000 Old_age Always - 0 190 Airflow_Temperature_Cel 0x0022 076 049 045 Old_age Always - 24 (Min/Max 18/26) 194 Temperature_Celsius 0x0022 024 051 000 Old_age Always - 24 (0 17 0 0) 195 Hardware_ECC_Recovered 0x001a 041 021 000 Old_age Always - 130449727 197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 0 198 Offline_Uncorrectable 0x0010 100 100 000 Old_age Offline - 0 199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0

    Используя SMART можно предугадать с довольно большой вероятностью проблемы связанные с:

    • Магнитными головками диска
    • Физическими повреждениями диска
    • Логическими ошибками
    • Механическими проблемами (проблемы привода, системы позиционирования)
    • Подачей питания (платы)
    • Температурой

    Расшифруем полученный вывод.


    Каждый атрибут имеет группу значений:

    • ID# — идентификационный номер атрибуты (детали ). Каждый атрибуты имеет свой уникальный ID, который должен быть одинаковым для всех фирм производителей дисков.
    • ATTRIBUTE_NAME – название атрибута. Так как разные фирмы производители дисков могут называть атрибуты по своему (сокращать, синонимы), лучше всего ориентироваться по ID атрибута.
    • FLAG (Status flag) – каждый атрибут имеет определенный флаг, назначенный фирмой разработчиком диска. В ОС с графическим интерфейсом значения этого флага предоставляется в виде набора буквенных обозначений – w,p,r,c,o,s (расшифровка ниже). И эти наборы предоставляются в виде шестнадцатеричного числа которые вы видели выше.
    1. W arranty: Указывает на жизненно важный атрибут диска и покрывается гарантией. Если этот флаг установлен и значение атрибута с этим флагом достигнет порогового (threshold) значения, в то время, когда диск еще на гарантии, то фирма должна будет заменить диск бесплатно.
    2. P erformance: Указывает на атрибут, который представляет показатель производительности диска – не критический.
    3. Error R ate: Атрибут с частотой ошибок.
    4. C ount of occurrences: Атрибут-счетчик происшествий.
    5. O nline test: Атрибут, который обновляет значения только через on-line тесты. Если не указан, то обновляется через off-line тесты.
    6. S elf preserving: Указывает на атрибут который может собирать и сохранять данные о диска, даже если S.M.A.R.T. отключен.
    • Value – Текущее значение атрибута(оценка атрибута диска на основе Raw_value). Низкое значение говорит о быстрой деградации диска или о возможном скором сбое. т.е. чем выше значение Value атрибута, тем лучше. Это значение атрибута нужно сравнивать с пороговым (threshold) значением. Если это критический атрибут и значение ниже порогового — нужно проводить замену диска.
    • Worst – Самое низкое значение атрибута за жизненный цикл диска. Значение может изменяться на протяжении жизни диска, и не должно быть ниже или равным пороговому значению (threshold).
    • Thresh (Threshold) – Пороговое значения атрибута назначенное создателем диска. Значение не меняется за жизненный цикл диска. Если значение Value атрибута станет равным или меньше порогового – появиться уведомление в колонке WHEN_FAILED. И диск нужно заменить.
    • Type – тип атрибута. Может быть критическим (pre-fail), который указывает на предстоящий отказ диска из-за ошибок или не критический, указывающий на достижение конца жизненного цикла диска.
    • Raw_value – Объективное значения атрибута, которое показывается в десятичном формате (вычисляется firmware диска) и известных только производителю единицах (имеет связь с Value, Threshold и Worst значениями).
    • WHEN_FAILED – Указывает на проблемы с атрибутом.

    Атрибут диска примет значение failed, в случаи:

    Value = f(Raw_value ) <= Threshold

    • f(Raw_value) – функция вычисления деградации (уменьшения) значения параметра Value в зависимости от значения Raw_value.

    Недостатки такого подхода к вычислению деградации диска:

    • Для каждого производителя дисков и даже модели диска функция f(Raw_value) вычисляется по-разному.
    • Оценка каждого атрибута подсчитывается независимо друг от друга – т.е. игнорируются связи между атрибутами.

    Теперь хочу представить таблицу с перечисленными всех атрибутов. Те атрибуты, которые выделены розовым — относятся к атрибутам критическим. К тому же, указано тип параметра в зависимости от величины значения. Т.е. чем больше значение параметра, тем лучше состояние здоровья диска или наоборот.

    Теперь приступим к атрибутам:

    #ID HEX Имя атрибута Лучше если… Описание
    01 01 Raw Read Error Rate Частота ошибок при чтении данных с жёсткого диска. Происхождение их обусловлено аппаратной частью винчестера.
    02 02 Throughput Performance Общая производительность накопителя. Если значение атрибута уменьшается перманентно, то велика вероятность проблем с винчестером.
    03 03 Spin-Up Time Время раскрутки шпинделя из состояния покоя (0 rpm) до рабочей скорости. В поле Raw_value содержится время в миллисекундах/секундах в зависимости от производителя
    04 04 Start/Stop Count * Полное число запусков, остановок шпинделя. Иногда в том числе количество включений режима энергосбережения. В поле raw value хранится общее количество запусков/остановок жёсткого диска.
    05 05 Reallocated Sectors Count Число операций переназначения секторов. При обнаружении повреждённого сектора на винчестере, информация из него помечается и переносится в специально отведённую зону, происходит утилизация bad блоков, с последующим консервированием этих мест на диске. Этот процесс называют remapping. Чем больше значение Reallocated Sectors Count, тем хуже состояние поверхности дисков - физический износ поверхности. Поле raw value содержит общее количество переназначенных секторов.
    07 07 Seek Error Rate Частота ошибок при позиционировании блока магнитных головок. Чем больше значение, тем хуже состояние механики, или поверхности жёсткого диска.
    08 08 Seek Time Performance Средняя производительность операции позиционирования. Если значение атрибута уменьшается, то велика вероятность проблем с механической частью.
    09 09 Power-On Hours (POH) Время, проведённое устройством, во включенном состоянии. В качестве порогового значения для него выбирается паспортное время наработки на отказ.
    10 0A Spin-Up Retry Count Число повторных попыток раскрутки дисков до рабочей скорости в случае, если первая попытка была неудачной.
    11 0B Recalibration Retries Количество повторов рекалибровки в случае, если первая попытка была неудачной.
    12 0C Device Power Cycle Count Число циклов включения-выключения винчестера.
    13 0D Soft Read Error Rate Число ошибок при чтении, по вине программного обеспечения, которые не поддались исправлению.
    187 BB Reported UNC Errors Неустранимые аппаратные ошибки.
    190 BE Airflow Temperature Температура воздуха внутри корпуса жёсткого диска. Целое значение, либо значение по формуле 100 - Airflow Temperature
    191 BF G-sense error rate Количество ошибок, возникающих в результате ударов.
    192 C0 Power-off retract count Число циклов аварийных выключений.
    193 C1 Load/Unload Cycle Количество циклов перемещения блока головок в парковочную зону.
    194 C2 HDA temperature Показания встроенного термодатчика накопителя.
    195 C3 Hardware ECC Recovered Число коррекции ошибок аппаратной частью диска (ошибок чтения, ошибок позиционирования, ошибок передачи по внешнему интерфейсу).
    196 C4 Reallocation Event Count Число операций переназначения в резервную область, успешные и неудавшиеся попытки.
    197 C5 Current Pending Sector Count Число секторов- кандидатов на перенос в резервную зону. Помечены как не надёжные. При последующих корректных операциях атрибут может быть снят.
    198 C6 Uncorrectable Sector Count Число некорректируемых ошибок при обращении к сектору.
    199 C7 UltraDMA CRC Error Count Число ошибок при передаче данных по внешнему интерфейсу.
    200 C8 Write Error Rate / Multi-Zone Error Rate Общее количество ошибок при заполнения сектора информацией. Показатель качества накопителя.
    201 C9 Soft read error rate Частота появления «программных» ошибок при чтении данных с диска, а не аппаратной части HDD.
    202 Ca Data Address Mark errors Число ошибок адресно помеченной информации (Data Address Mark (DAM)).Если автоматически не корректируется - заменить устройство.
    203 CB Run out cancel Количество ошибок ECC данных, присоединяемые к передаваемому сигналу, позволяющие принимающей стороне определить факт сбоя или исправить несущественную ошибку.
    204 CC Soft ECC correction Количество ошибок ECC, скорректированных программным способом.
    205 CD Thermal asperity rate (TAR) Число ошибок в следствии температурных колебаний.
    206 CE Flying height * Высота между головкой и поверхностью диска компьютера.
    209 D1 Offline seek performance * Drive’s seek performance during offline operations.
    220 DC Disk Shift Дистанция смещения блока дисков относительно шпинделя. В основном возникает из-за удара или падения.
    221 DD G-Sense Error Rate Число ошибок, возникших из-за внешних нагрузок и ударов. Атрибут хранит показания встроенного crash датчика.
    222 DE Loaded Hours * Время, проведённое блоком магнитных головок между выгрузкой из парковочной области в рабочую область диска и загрузкой блока обратно в парковочную область.
    223 DF Load/Unload Retry Count * Количество новых попыток выгрузок/загрузок блока магнитных головок винчестера в/из парковочной области после неудачной попытки.
    224 E0 Load Friction Величина силы трения блока магнитных головок при его выгрузке из парковочной области.
    225 E1 Load Cycle Count Число циклов вход-выход в парковочную зону.
    226 E2 Load ‘In’-time * Время, за которое привод выгружает магнитные головки из парковочной области на рабочую поверхность диска.
    227 E3 Torque Amplification Count Количество попыток скомпенсировать вращающий момент.
    228 E4 Power-Off Retract Cycle Количество повторов автоматической парковки блока магнитных головок в результате выключения питания.
    230 E6 GMR Head Amplitude * Амплитуда «дрожания» (расстояние повторяющегося перемещения блока магнитных головок).
    231 E7 Temperature Температура жёсткого диска.
    240 F0 Head flying hours * Время позиционирования головки.
    250 FA Read error retry rate Число ошибок во время чтения жёсткого диска.

    Атрибуты дисков нужно смотреть в целом и самостоятельно прогнозировать замену, не только опираясь на smart атрибуты. Нужно дополнительно проводить тесты на бедблоки и запускать fscheck и smart тесты, о которых пойдет речь в следующих статьях.


  • Close