36

Значение SMART C5 моего жесткого диска Samsung HM640JJ (в ноутбуке HP Pavilion dv6) - «желтый статус = осторожность»

С5 вчера было 10, а сегодня 21.

C4 (Reallocation Event Count) = 0 и 05 (Reallocated Sectors Count) = 0

Как заставить прошивку перераспределить их?

  • Я удалил разделы, воссоздал их снова и отформатировал весь диск.
  • Я бегал chkdsk /r /f
  • Я запустил утилиту проверки диска BIOS и другие инструменты диагностики / восстановления

7 ответов7

111

Краткий ответ: напишите что-нибудь новое для сектора (даже нули - что делает длинный формат).

Длинный ответ

Жесткие диски сегодня пытаются скрыть поврежденные сектора от хост-компьютера. Хост-компьютер просто просит диск вернуть содержимое определенного номера сектора. Обычно диск считывает сектор, возвращает его на хост-компьютер, и все в порядке.

Жесткий диск знает, является ли значение, которое он прочитал, действительным или нет, потому что диск использует код с исправлением ошибок (ECC) для проверки правильности прочитанного содержимого. Если накопитель обнаружит, что содержимое сектора недопустимо, он попытается повторить чтение. Надежда состоит в том, что, если он просто прочитает это снова, он может получить правильное содержимое сектора. Он будет повторять попытки до тех пор, пока не получит правильное значение или не достигнет своего предела времени (формально известного как ограничение времени выполнения команды или CCTL).

Во время этих попыток диск будет казаться мертвым; так как он больше не отвечает на команды.

Запасные сектора

Большинство современных приводов содержат несколько "запасных" секторов (например, 1024 запасных сектора). Если диск распознает сектор как плохой, он прекратит его использование. Любые запросы на чтение или запись в этот поврежденный сектор будут прозрачно перенаправлены в резервный сектор. Это выделение поврежденного сектора и перераспределение его данных в резервный сектор называется событием перераспределения. И общее количество перераспределенных секторов (и, следовательно, сколько ваших резервных секторов было использовано) - это количество перераспределенных секторов.

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

ID                             Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ===
(05) Reallocated Sector Count  192      192    140        64

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

ID                             Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ===
(05) Reallocated Sector Count  192      192    140         64
(C4) Reallocated Event Count   196      196    0            4

Что делать, если он не может прочитать данные?

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

Бонусная болтовня: в старые времена ваш жесткий диск поставлялся с наклейкой, прикрепленной к нему. Эта наклейка содержала список заводских дефектов ; список всех известных плохих мест на диске.

Если вы выполнили низкоуровневое форматирование диска, вам пришлось использовать инструмент для ввода всех местоположений « Цилиндрическая головка-сектор» в «плохих точках».
На дисках SCSI есть команда IOCTL_DISK_REASSIGN_BLOCKS, которая сообщает им о необходимости перераспределить неисправное место на диске после того, как операционная система его обнаружит. В дисках IDE все это происходит автоматически, без необходимости вмешательства операционной системы.

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

Это то, что Pending Sectors . Диск обнаружил, что сектор отказывает, и его необходимо переназначить на резервный. Но он не может этого сделать, пока не сможет успешно прочитать данные. Когда накопитель знает, что сектор неисправен, и его необходимо переназначить, но он пока не может этого сделать, потому что он ожидает, чтобы получить хорошее чтение из сектора: это называется Счетчик ожидающих секторов:

ID                             Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ====
(05) Reallocated Sector Count  192      192    140          64
(C4) Reallocated Event Count   196      196    0             4
(C5) Current Pending Sector    100      100    0             2

Мой жесткий диск имеет 2 сектора, которые диск распознает как плохие, но пока не может быть перераспределен. Если бы вы прочитали один из этих «ожидающих секторов», диск, скорее всего, попытался бы повторить (и повторить, и повторить) и в конечном итоге вернул бы ошибку чтения операционной системе хоста:

Откажитесь от ожидающего сектора, и он будет перераспределен

Существует два способа, которыми накопитель может, наконец, перераспределить сектор и использовать другой резервный сектор:

  • это наконец получает хорошее чтение
  • вам все равно, что в секторе больше

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

Другой способ, которым накопитель может перераспределить сектор, - это если вы дадите ему понять, что содержимое этого сектора не имеет значения; что тебе все равно, что в нем больше. Как ты это делаешь?

Написав что-то новое для сектора.

Всякий раз, когда вы читаете или записываете сектор на жестком диске, вы должны читать / записывать весь 512-байтовый сектор 1. Вы не можете написать только часть сектора. Когда ОС записывает данные в сектор, она должна указывать все 512 байтов. Если вы скажете жесткому диску, что вы хотите, чтобы это новое содержимое заменило этот поврежденный сектор, то накопитель узнает, что вам все равно, что в данный момент находится в поврежденном секторе. Затем он может перераспределить неисправный сектор на одну из запчастей, и сектор больше не находится в состоянии ожидания.

Вот почему, когда люди спрашивают о наличии Current Pending Sectors, ожидающих обработки, обычно советуют использовать инструмент (например, Data LifeGuard от Western Digital) для записи всех нулей на диск.

Записывая нули в каждый сектор на диске, вы сообщаете диску, что он может наконец перераспределить все эти надоедливые ожидающие секторы. После очистки все ваши Pending Sectors станут Reallocated Sectors:

ID                             Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ====
(05) Reallocated Sector Count  192      192    140          66
(C4) Reallocated Event Count   196      196    0             5
(C5) Current Pending Sector    100      100    0             0

Примечание: не обязательно использовать инструмент "низкого уровня", такой как Data DigitalGuard от Western Digital. Если вы дадите команду Windows выполнить полный формат тома (то есть не- быстрое форматирование), она будет записывать нули в каждый сектор тома.

Система регистрации ОС поддерживает маркировку секторов как плохих

Вооружившись этими знаниями, мы рассмотрим наиболее запутанный сценарий.

До появления Integrated Drive Electronics (IDE) операционная система хоста отвечала за обнаружение поврежденных секторов, повторную попытку чтения, перемещение данных в другой сектор и маркировку старых секторов как поврежденных.

Если бы вы запускали chkdsk /r c: с использованием операционной системы хоста, он распознал бы, что "ожидающие" сектора являются плохими, и пометил бы их как плохие сам по себе, и никогда не пытался бы использовать их снова:

> C:\Windows\system32>chkdsk /r c:
The type of the file system is NTFS.
Volume label is OS.

        12 KB in bad sectors.

Таким образом, предполагая 512-байтовый секторный жесткий диск, 12 КБ «ожидающих секторов» или в этом примере 12 КБ, помеченных ОС как «поврежденные сектора», которые будут соответствовать десятичному 24 или шестнадцатеричному 0x18, как было бы показано утилитой SMART disk такие как информация о Crystal Disk:

ID   Attribute Name            Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ====
(C5) Current Pending Sector    100      100    0            18

Примечание . Утилита Western Life DataGuard v1.31 (последняя на 31.08.2017) не отображает текущую версию SMART.Необработанные значения счетчика правильно.

Теперь, если вы выполняете полный формат (который записывает нули в каждый сектор тома):

Это означает, что все те сектора, которые находились на Pending , будут перераспределены. Теперь для файловой системы безопасно снова использовать эти сектора. Чтобы проинструктировать систему регистрации, что эти сектора больше не являются "плохими" , вы выполняете опцию, где она переоценивает плохие сектора:

>chkdsk c: /B

где в документации команды написано

/B              NTFS only: Re-evaluates bad clusters on the volume
                (implies /R)

Или же

Согласно:https://technet.microsoft.com/en-us/library/cc730714(v=ws.11).aspx

/B              NTFS only: Clears the list of bad clusters on the volume and 
                  rescans all allocated and free clusters for errors. /b includes
                  the functionality of /r. Use this parameter after imaging a
                  volume to a new hard disk drive.

Это была полная лотерея и скриншоты, которые никогда не будут прочитаны.

5

Вам не нужно ничего делать - пока. Счет перераспределения означает «диск обнаружил дефектный сектор и успешно перераспределил его». Прошивка уже исправила проблему.

Вам просто нужно знать, что диск начинает выходить из строя. В какой-то момент в будущем на диске не останется свободных секторов для перераспределения, и вы потеряете данные. Если какой-то важный блок потерян, вы можете потерять все данные на диске.

Так что следите за этим значением или купите новый диск прямо сейчас, чтобы вы могли забыть об этом.

3

У меня был хороший опыт работы с методом, описанным здесь https://www.smartmontools.org/wiki/BadBlockHowto. Мой диск шумел и перестал работать, поэтому я использую умный отчет и формулу для вычисления плохого блока и использую dd для его очистки. Мне повезло, потому что смарт все еще сообщает о текущем количестве секторов, но диск работает уже 2 года или около того. Я купил замену, но я никогда не использовал ее. Мне кажется, что умный тоже не так точен.

2

Может быть, вы не знаете, этот инструмент:HD Sentinel

Hard Disk Sentinel (HDSentinel) - программное обеспечение для мониторинга и анализа SSD и HDD с несколькими ОС. Его целью является обнаружение, тестирование, диагностика и устранение проблем с жесткими дисками, создание отчетов и отображение состояния SSD и HDD, снижения производительности и сбоев. Hard Disk Sentinel дает полное текстовое описание, советы и отображает / сообщает наиболее полную информацию о жестких дисках и твердотельных дисках внутри компьютера и во внешних корпусах (жесткие диски USB / жесткие диски e-SATA). Для обеспечения максимальной безопасности ваших ценных данных доступно множество различных оповещений и опций отчетов.

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

1

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

1

Вам нужно использовать инструмент, который пишет в каждый сектор диска. Иначе, нет способа сделать это. Если диск выделил резервный сектор и переназначил его, какие данные он должен поместить в резервный сектор? Он понятия не имеет, поскольку попытка чтения из существующего сектора не удалась. Только операция записи может очистить ошибку.

1

Попробуйте загрузочные компакт-диски Spinrite 6 или HDD. Они пишут поверхностные тесты, поэтому он должен очистить ожидающие сбойные секторы и увеличить перераспределенное количество.

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