Здравствуйте. Есть внешний HDD и на нем появились бэд-блоки. Таблица разделов там GUID, т.е. MacOS Extended (журналируемая) ФС.
Почему-то на Sierra и High Sierra стандартная дисковая утилита в "Первой помощи" ничего сделать не может, т.е. пишет, что все ок, однако Disk Drill находит бэды. Есть ли на маке программы для подобной задачи? Спасибо.
fshp, Софт бэд это ошибка чтения с диска, или записи на него.
Неудачная попытка чтения - т.е диск либо не смог прочитатать, либо слишком долго читал, либо прочитал но контрольная сумма не сошлась.
Такие проблемы возникают по множеству причин - например нестабильное питание, плохой кабель, или контакт, вибрация, и еще вагон факторов.
Если такая проблема есть - сектор помечается сбойным, кандидат на замену.
После чего диск проверяет этот сектор еще раз - если проблема повторяется, сектор ремапиться, и в SMART увеличивается счетчик переназначенных секторов.
Если повторная проверка пройдена успешно - статус сбойного снимается и сектор эксплуатируется далее.
Это все происходит без вмешательства пользователя, и не требует никакого софта.
Принудительно сделать проверку поверхности можно штатной утилитой.
Поэтому разумеется софт бэды есть это факт.
Но никаких специальных утилит для лечения софт бэдов нет.
Если софт бэд вызван случайной ошибкой он сам исправится.
Этот процесс можно ускорить запустив сканирование поверхности chkdsk /F или форматирование без параметра "быстрое".
На маке то же самое - штатные утилиты работы с диском и разметки диска и более ничего.
Вот и все.
АртемЪ, это вы откуда-то скопипастили. А на деле это выглядело так:
Был десяток софтбедов, в которых контрольная сумма не совпадала.
Физически сектор в порядке, но при чтении контроллер выдавал ошибку. (Это я уже в процессе понял. Ведь на первый взгляд софт не отличается от обычного бэда).
На эти сектора ругался смарт и badblocks, но при этом счётчик переразмеченных секторов оставался нулевым.
Ведь сектора ремаппятся лишь при ошибке записи (при чтении мы не знаем что записать в заремаппленый сектор).
Вылечил я это обнулив руками эти сектора. Потом пришлось fsck выполнить (может что и побилось, не обратил внимание).
Теперь они читаются-пишутся. А счётчик ремаппа по-прежнему 0.
Не стоит.
Изначально bad sectors переназначаются на здоровые из резерва самим диском. И вы их даже и не увидите.
Затем, когда резерв у диска заканчивается - это переназначение выходит на уровень файловой системы.
Если вы эти bad sectors видите - то диск помирает.