Есть ли файловая система работающая с битыми дисками?
контроллеры умеют сильно битые сектора убирать из обслуживания, но делают это лишь тогда когда его заставятЭто всё сказки, повествующие о программах, которые переразмечают бедблоки. На деле, если вы заглянете в спецификацию AHCI, то не обнаружите там ничего подобного. Нет таких команд в протоколе. Контроллер должен сам об этом позаботится. Если на диске появились бедблоки (не просто запись в S.M.A.R.T., а именно нечитаемые области), то это означает лишь то, что резервная область закончена и переразмечать сектора уже некуда.
Самая частая причина появления битых секторов - механические повреждения ферромагнитного напыления на блинах. Чешуйки вещества слетают с блина и превращаются в пыль. Затем пылинки попадают между головкой и диском, тем самым способствуя дальнейшей деградации поверхности. Этот процесс лавинообразный.
Но если вас не смущает скорая смерть диска и потеря данных, то да, такие файловые системы есть. Например ext4. mkfs.ext4 имеет параметр -l, после которого можно указать файл, сгенерированный программой badblocks. Так же mkfs.ext4 может сама проверить диск перед созданием файловой системы. Битые сектора будут игнорироваться.
Если вначале раздела много битых секторов, то файловая система не сможет быть создана, т.к. драйвер файловой системы ожидает расположение суперблока в строго определённом месте диска. В этом случае имеет смысл попробовать перенести начало раздела в другое место, урезав раздел слева.
UPD: Что бы продлить жизнь такому диску, можно определить сбойные области. Обрамить их несколькими гигабайтами (при большом объёме диска, из-за плотности записи лучше несколькими десятками) с каждой стороны. Объединить близколежащие области. Полученные диапазоны вообще не размечать. В итоге должно получится что-то вроде 200 гигабайт вначале не используемые, а затем раздел. Это позволит минимизировать количество перемещений головок над сбойной областью, что замедлит деградацию.
Но этот способ не подходит, если сбойные сектора распределены по всему объему диска.
Попробуйте отформатировать диск программой HDD Low Level format, потом прогоните программой Victoria со включенным режимом remap, она умеет строить график скорости чтения поверхности, если всё будет очень плохо, прогоните ещё раз. Если стало более-менее приемлемо, винт не отключается, не издаёт странных звуков и на графике нет провалов до нуля, форматируйте его в любую файловую систему и пользуйтесь.
Был такой опыт - развалился у меня под линуксом винт, возникла огромная куча бэдов. Проверка длилась несколько часов, но после проверки я смог скопировать с винта абсолютно всё что там у меня было. Файловая система была ext4.