ddrescue: повторить неудачные блоки после первого запуска

617
nautical

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

# ddrescue -vv -d -J /dev/sda /mnt/rescue/winxp.img winxp.map 

Программа выполнена около 60 ошибок. Я хотел повторить попытку только вышедших из строя блоков. Я нашел этот раздел на странице руководства:

-m file --domain-mapfile=file Restrict the rescue domain to the blocks marked as finished in the mapfile file. This is useful for merging partially recovered images of  backups, or if the destination drive fails during the rescue. Use '-'  as file to read the domain mapfile from standard input. Specialized  tools like ddrutility or partclone can produce a domain mapfile  listing all the used blocks in a partition, making the rescue more efficient. -M --retrim Mark all failed blocks inside the rescue domain as non-trimmed before beginning the rescue. The effect is similar to '--retry-passes=1', but the bad sectors are tried in a different order, making perhaps possible to rescue some of them. 

Следующая команда, которую я дал, была

# ddrescue -vv -d -M -m winxp.map /dev/sda /mnt/rescue/winxp.img winxp.2.map 

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

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

0

1 ответ на вопрос

2
Attie

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

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


Использование -mволи (как указано в руководстве) « Ограничить домен спасения блоками, отмеченными как завершенные в файле mapfile. » - т.е. только попытаться прочитать успешные блоки.

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

Это сработало. Недавно я тестировал другой диск с плохими блоками, который записывает только сбойные блоки. Полагаю, я застрял в этом образе мышления и понял, что «закончил» как провальные блоки, к которым были применены все меры по спасению (опробованные, обрезанные и очищенные). В любом случае, это заняло несколько часов, но восстановило 100% диска. Благодарю. nautical 5 лет назад 1

Похожие вопросы