Исправить плохие блоки на жестком диске Mac [закрыто]

24

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

В свое время Norton Disk Doctor занимался сканированием и маркировкой (переназначением) поврежденных блоков на Mac. Сегодня у нас есть различные инструменты для исправления ошибок в каталогах HFS + (Disk Utility, fsck, DiskWarrior, TechTool), но я не знаю ни одного инструмента, который бы выполнял сканирование поверхности и исправлял поврежденные блоки.

Какое программное обеспечение доступно для этого?

Если я знаю адрес неисправного блока, есть ли утилита терминала низкого уровня для его маркировки?

Андрей Вит
источник
3
Современные жесткие диски автоматически перераспределяют поврежденные блоки при неудачных операциях чтения. Единственная проблема заключается в потере данных в этом блоке, что может сделать файл нечитаемым / неработающим или может привести к ошибке в FS - для этого используйте checkdisk / fsck вашей системы (я не очень знаком с Mac). [Иногда плохие блоки являются результатом потери питания, а не аппаратной проблемы; это поправимо, но другая тема.]
хронос
5
@chronos Существует множество современных жестких дисков, которые автоматически перераспределяют поврежденные блоки только при неудачных операциях WRITE, а не при чтении. Я работал с множеством недавних жестких дисков, которые не смогут снова и снова читать один и тот же сбойный блок, но как только вы напишите на него, проблема будет исправлена.
Spiff
2
@Spiff - вы правы, я допустил ошибку, пытаясь избежать длинного объяснения того, как данные блока и поля CRC работают вместе для обеспечения целостности данных, и, таким образом, требует операции записи, чтобы проверить, является ли проблема физического блока или просто поврежденным CRC (который это поправимо). На самом деле, я не знаю ни одного современного жесткого диска, выполняющего переназначение при чтении ...
хронос
1
Есть кое-что, что нужно учитывать: мой опыт «исправления» ожидающего сектора в разделе NTFS состоял из 1) определения точного сектора данных, 2) записи в него и 3) сброса внутреннего счетчика поврежденных секторов NTFS (что было единственным шагом Я задокументирован на bogdan.org.ua/2010/03/01/… ). Я не уверен, что HFS + также поддерживает такой счетчик плохих блоков - если это так, это может быть дополнительной проблемой, если вы хотите восстановить этот отдельный сектор.
хронос

Ответы:

9

Я не знаю ни одного инструмента, который бы выполнял сканирование поверхности и исправлял плохие блоки.

С каким типом Mac и с каким жестким диском у вас проблемы?

Я сомневаюсь, что вы найдете какие-либо программные инструменты для «исправления» плохих блоков, по крайней мере, для недавнего оборудования. Я не знаю, когда это началось, но некоторое время назад возможность переназначения плохого сектора была объединена с прошивкой жесткого диска.

Если вы посмотрите на регистры SMART для вашего накопителя с помощью такого инструмента, как SMARTReporter , вы должны увидеть запись с идентификатором 05 и заголовком «Число перераспределенных секторов». Это количество поврежденных секторов, которые преобразовал диск.

Возможно, «Плохой блок» Диско-воина относится к чему-то другому? (Я не мог предположить, что это могло бы быть все же).


Обновление в ответ на комментарий (ниже):

SMARTReporter, похоже, довольно «причудливая» утилита. Фактически вы можете запрашивать и отображать содержимое регистров SMART накопителя, вам просто нужно перепрыгнуть через неожиданные обручи, чтобы сделать это.

В разделе часто задаваемых вопросов о SMARTReporter вы можете найти этот небольшой комментарий :
может ли SMARTReporter сказать мне, какой именно тест SMART не пройден?
Да, начиная с версии 2.4.5! Щелкните правой кнопкой мыши диск в списке дисков в окне настроек и выберите «Проверить атрибуты SMART».

Еще одна особенность SMARTReporter заключается в том, что cut'n paste, по-видимому, работает только в этих окнах отображения, когда вы используете элементы строки меню. Сочетания клавиш и контекстное окно «щелчок правой кнопкой мыши» не сделают этого. С другой стороны, SmartReporter IS бесплатно. ;-)

Но я отвлекся ...

Любопытно, что SMART Utility называет диск «Сбой», когда все другие утилиты показывают его как «Проверено». Он показывает 1 ожидающих плохих секторов. Итак, как вы можете заменить «ожидающий» плохой сектор на «удаленный» или «перераспределенный»?

Насколько я понимаю, вы бы этого не сделали. Предполагается, что прошивка привода должна делать это самостоятельно. Обратите внимание на то, что написано в таблице в SMART статье Wikipedia .

  • 05 Перераспределенных секторов
    Count Количество перераспределенных секторов. Когда жесткий диск обнаруживает ошибку чтения / записи / проверки, он помечает этот сектор как «перераспределенный» и передает данные в специальную зарезервированную область (резервную область). Этот процесс также известен как переназначение, и «перераспределенные» сектора называются переназначениями.
    Вот почему на современных жестких дисках «плохие блоки» не могут быть обнаружены при тестировании поверхности - все плохие блоки скрыты в перераспределенных секторах. Однако с увеличением количества перераспределенных секторов скорость чтения / записи имеет тенденцию к снижению.
    Необработанное значение обычно представляет собой количество найденных и переназначенных поврежденных секторов. Таким образом, чем выше значение атрибута, тем больше секторов пришлось перераспределить.

  • C5 Текущее число ожидающих секторов
    Число «нестабильных» секторов (ожидающих повторного отображения из-за ошибок чтения). Если впоследствии нестабильный сектор записывается или читается успешно, это значение уменьшается и сектор не переопределяется. Ошибки чтения в секторе не переназначают сектор (так как он может быть читаем позже); вместо этого микропрограмма привода запоминает, что сектор необходимо переназначить, и переназначает его при следующей записи.

Таким образом, если вышеприведенное верно, то очевидно, что число ожидающих секторов следует интерпретировать с осторожностью. Ошибка чтения сектора, скорее всего, произошла во время сканирования диска, которое вы сделали ранее с TechTool. (Кстати, вы имеете в виду TechTool Deluxe 3.1.3 ?) Поскольку TechTool, вероятно, не пытался написать сектор, он еще не был перераспределен.

Можно ли это сделать без переформатирования?

Я думаю, что «переформатирование» могло бы достигнуть чего-либо только в том случае, если формат записывается в каждый сектор диска. Я не знаю, достигнет ли это стандартного (небезопасного) стирания с помощью Дисковой утилиты ... что, как я полагаю, вы подразумеваете под переформатированием в контексте MAC ...

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

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

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

иррациональный Джон
источник
1
Это для моего iMac внутреннего SATA HD. SMARTReporter не говорит ничего, кроме «Проверено», но другой инструмент под названием SMART Utility содержит всю информацию. Любопытно, что SMART Utility называет диск «Сбой», когда все другие утилиты показывают его как «Проверено». Это показывает 1 ожидающих плохих секторов. Итак, как вы можете заменить «ожидающий» плохой сектор на «удаленный» или «перераспределенный»? Можно ли это сделать без переформатирования? (Да, я зарезервирован, но в интересах экономии времени.)
Эндрю Вит
1
В дополнение к тому, что я сказал в своем обновлении выше, я предпочитаю проводить диагностику производителя дисков. Возможно, это больше, чем нужно, но я понимаю, почему бы и нет? Но это, черт побери, из меня, как сделать это для iMac. Как правило, диагностика распространяется в виде загрузочного образа компакт-диска, но я не верю, что какой-либо из них будет загружаться на Intel Mac. Чтобы обойти это, я обычно вынимаю диск и монтирую его на ПК с Windows. Тем не менее, я считаю, что удаление накопителя из iMac может стать настоящей PITA, которую я бы не рекомендовал большинству. <вздох>
иррациональный Джон
@Andrew Vit - это может быть случай, когда запись в этот ожидающий плохой сектор исправит это (удалите сектор из списка ожидающих, не добавляя в список перераспределенных).
хронос
3
Для записи, в конечном итоге сделал именно это: переформатировал с опцией «записи нулей», которая заняла некоторое время, а затем клонировал обратно из моей резервной копии. Мой «ожидающий» плохой блок, о котором сообщалось в SMART Utility, исчез: он просто исчез, и на диске теперь нет плохих блоков ... / пожимает плечами /
Эндрю Вит
1
@ Андрей Вит: Спасибо за обновление с вашим статусом. Я всегда ценю то, как заканчивается история. Если это делает тебя счастливым, то, без сомнения, оно того стоило. Но IMO переформатировать «записать нули» было излишним. Сектор, вероятно, активно не использовался и (вероятно) был бы переназначен, если / когда вы его использовали. Из любопытства, не могли бы вы еще раз проверить свои значения SMART и посмотреть, был ли сектор фактически переназначен? (Количество перераспределений изменилось с 0 на 1?) Или это был «просто поврежденный CRC», вероятность, которую хронос упоминал в предыдущем комментарии?
иррациональный Джон
12

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

Я бы предложил загрузить smartmontools и GSmartControl для просмотра диагностики SMART в качестве еще одной проверки, если вы не уверены, какой диагностике SMART доверять.

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

Самый простой способ заставить дисковод самостоятельно выполнять повторное сопоставление плохих блоков - это загрузиться с Live CD с Ubuntu , затем открыть терминал и выполнить команду:

sudo badblocks -nvs /dev/sda

Это позволит провести неразрушающий тест случайного чтения-записи на первом диске, по пути переназначая плохие сектора.

Если у вас более одного жесткого диска, вы можете заменить / dev / sda на / dev / sdX, где X - строчная буква. Вы можете получить список всех жестких дисков (/ dev / sdX устройств), набрав эту команду:

sudo fdisk -l

Поскольку вы используете Mac OS X, основанную на BSD, вы также можете прочитать о badsect и bad144 , которые являются встроенными утилитами командной строки BSD для работы с плохими блоками.

грабить
источник
Это займет некоторое время:Testing with random pattern: 0.15% done, 27:02 elapsed. (0/0/0 errors)
neu242
В качестве альтернативы, если у вас есть инструменты Unix, установленные на другом загрузочном диске, вы можете скачать и собрать e2fsprogs.sourceforge.net, который содержит badblocks. Затем просто размонтируйте диск, который вы хотите проверить, и запустите на нем badblocks.
user8128167
6

Мой опыт работы со SpinRite от grc.com был очень позитивным. Мне удалось восстановить по крайней мере 4 диска, которые потерпели неудачу при каждой попытке их восстановления. Единственным недостатком является то, что для этого требуется компьютер на базе BIOS, что означает, что он не будет работать на современных компьютерах на основе EFI. Хорошо, что его запускает практически любой другой ПК, с дискеты, компакт-диска или флэш-накопителя. Я не нашел ничего более близкого с точки зрения проверки содержимого отдельных секторов и восстановления данных, которые каждая другая утилита отбрасывает как плохой блок.

Alphaman
источник
6

Встроенная команда OS X fsck_hfs имеет опцию -S, которая, очевидно, будет сканировать и исправлять поврежденные блоки на жестком диске в OS X.

Из документации:

-S Заставить fsck_hfs сканировать все устройство в поисках ошибок ввода / вывода. Он попытается отобразить блоки с ошибками на имена, аналогично опции -B.

Пример:

fsck_hfs -fy -S / dev / disk3s11

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

Мэтью Элви
источник
Я не верю, что это делает чтение и перезапись для каждого блока, как например, badblocks -n, что часто необходимо для того, чтобы встроенное программное обеспечение диска фактически освободило блок.
Тарын
3

Это старый вопрос, но все еще актуален. Что сработало для меня следующее:

  • Если возможно, загрузитесь с раздела или диска, отличного от основного. Убедитесь, что это не опция восстановления Mac, если вы хотите использовать стороннее приложение для выявления поврежденных файлов.
  • Определите все файлы на вашем жестком диске, которые повреждены из-за плохих блоков. Я использую Carbon Copy Cloner для создания зеркала моего диска в качестве резервной копии (он дает вам список поврежденных файлов). Есть, вероятно, другие инструменты, которые могут сделать это.
  • Найдите эти файлы на вашем диске и удалите их (также очистите корзину! )
  • Откройте Дисковую утилиту и сотрите пустое место на диске, написав «0». (вам нужно написать только один раз, поэтому выберите самый быстрый вариант). Пожалуйста, учтите, это может занять некоторое время, особенно если у вас много свободного места.

Это идентифицирует плохие блоки и помечает их как таковые, чтобы они больше не использовались. Как упоминалось ранее, ошибки будут отображаться только при попытке ЗАПИСИ к нему. Написав 0, вы делаете именно это.

  • если у вас есть резервная копия этих файлов, замените их вручную из резервной копии (если вы хотите заменить их в первую очередь).

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

Gerbie
источник
0

Я слышал хорошие вещи о SpinRite от GRC , но сам никогда не пробовал.

fredden
источник
К сожалению, SpinRite скорее всего принесет больше вреда, чем пользы на и без того неисправном диске. :(
ограбить
@ Роб вред как? SpinRite, кажется, объединяет несколько подходов, с акцентом на необычайно хороший уход
Грэм Перрин,
2
@GrahamPerrin для одного, не имеет смысла пытаться восстановить ваши данные и записать их обратно на тот же известный дефектный носитель. Но игнорируя это, как только SpinRite встречает нечитаемый блок, он пытается и повторяет попытки, прежде чем продолжить. В то же время привод может продолжать ухудшаться до точки полного отказа («естественно» или, возможно, в результате дополнительного износа, вызванного постоянными повторными попытками SpinRite). В прошлом я запускал SpinRite на неисправном жестком диске объемом 250 ГБ, и он работал более месяца без завершения. Вкратце: сначала попробуйте ddrescue и другие инструменты.
ограбить
2
@rob спасибо, я этого не осознавал. Техническая поддержка GRC подтвердила мне, что восстановление на что-либо, кроме диска, с которого предпринимается попытка восстановления , не поддерживается в текущей версии SpinRite.
Грэм Перрин
спорный парень , который сделал Spinrite был пойман говорят много ерунды еще в начале 2000 - х годов; Я помню, как он писал о «слабых битах», которых, например, просто не существует.
Томас
0

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

Единственный инструмент на Mac, который я нашел, это «Инструменты скорости». Когда он находит плохой блок, он записывает в блок ноль (даже если он находится в файле ... думается, что он уже плохой).

http://www.intechusa.com/

aerickson
источник
Это не то, что делает низкоуровневый формат, или даже любой другой формат, так как формат не означает стирание, это означает, что диск должен быть помещен в формат, который позволяет его использовать. Низкоуровневый формат определяет, куда следует помещать дорожки и сектора на диск , и требуется только один раз при изготовлении диска.
Чай Т. Рекс
Если вы прочитаете немного дальше, вы увидите, что в статье, которую вы связали, упоминается, что «низкоуровневое форматирование» теперь означает запись одинакового значения для всех блоков. en.wikipedia.org/wiki/Disk_formatting#Disk_reinitialization
аериксон
Если вы прочитаете немного дальше, вы увидите, что это все еще неправильно.
Чай Т. Рекс
0

Сначала обратите внимание на комментарий @chronos… think: dataloss. В крайнем случае исправление может сделать невозможным восстановление данных.


Среди утилит, которые я использовал на Mac, одна выдающаяся для безошибочных предупреждений, таких как эта:

введите описание изображения здесь

Предупреждение

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

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

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

(Чтобы оценить риск потери данных, см., Например, документацию SpinRite, связанную с частью « Зачем?» Моего ответа в разделе Как проверить, есть ли поврежденный сектор на жестком диске USB в OS X? )

За его безошибочные предупреждения, за удовлетворение перед покупкой и многое другое, этот ответ является моим вотумом доверия:

Drive Genius 3

Грэм Перрин
источник
В Ask Different есть комментарий от @BSDGuy
Грэм Перрин
-1

Ужасный, ужасный совет выше. Я имею в виду ВАУ - ужасный совет. :качает головой:

  1. Я не знаю ни одной современной утилиты для Mac OS X, которая бы исправляла (помечала) плохие блоки и позволяла вам продолжать свой день. При этом вам нужно найти более старую версию Norton Utilities для Mac OS, чтобы исправить неисправные блоки на рассматриваемом HD. Например, версия 7.0 или 8.0.

  2. Так как я предполагаю, что вы используете компьютер в одежде Mac (компьютер с Post PPC, использующий процессор Intel и работающий под Unix [Mac OS X]), вам нужно будет найти себе хороший Macintosh для PPC (или, возможно, он будет работать в режиме эмуляции на компьютер Intel?), который все еще может загружать ОС 9. Получите (я предполагаю, что у вас есть SATA HD?) карту SATA PCI, которая работает с ОС 9. Затем загрузитесь с компакт-диска Norton, запустите Disk Doctor и выполните сканирование / восстановление HD под вопросом.

  3. Звучит сложно, но это не так. Будучи «РЕАЛЬНЫМ» техником и фанатом Mac в течение последних 20 лет, у меня есть машины от 128k до Dual G5, так что аппаратные средства просто лежат для меня. Другими словами, это очень легко для меня.

  4. Почему я звучу грубо? Потому что я. Я очень недоволен нынешним Apple, и я особенно ненавижу Стива Джобса за то, что он уничтожил Apple Computer для нас, пользователей Macintosh 1980-х и 90-х, и превратил Mac в не что иное, как в ПК, на котором установлена ​​мягкая версия Unix. Он и люди, которые думают так же, как он, являются причиной того, что у Mac больше нет утилит, необходимых для «правильного» восстановления HD.

  5. Любой, кто советует вам смотреть на данные SMART или каким-либо образом полагается на данные SMART, не должен их слушать. СМАРТ крайне несовершенен.

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

NotAnMSFan
источник