Пометка секторов как плохих только предотвращает их использование в будущем, но фактически не восстанавливает данные, которые уже есть . Чтобы полностью переместиться в другое место, сектора должны быть прочитаны хотя бы один раз.
Вы можете использовать ddrescue
с компакт-диска Linux. Он автоматически пропускает поврежденные области во время первоначального клонирования и возвращается к ним только в фазах 2/3 (обрезка / очистка). Это позволяет немного быстрее достичь 99%: после начального этапа у вас будет в основном пригодный для использования диск (без нескольких десятков мегабайт); после фазы обрезки вы, вероятно, скопируете 99,99% данных (без нескольких секторов). Финальная (очищающая) фаза все еще займет много времени, если у вас есть много поврежденных секторов, но на этом этапе нет проблем, если вы сдадите и отмените процесс.
ddrescue --force /dev/disk/by-id/ata-ST12345 /dev/disk/by-id/ata-EVO123 /tmp/dd.log ^ input ^ output ^ resume log
(С другой стороны, он клонирует диски в сыром виде, не зная, какие области необходимы, а какие «свободны», поэтому копирование оставшегося неповрежденного диска займет несколько больше времени, в отличие от Clonezilla, которая распознает и пропускает свободные области.)