Как ускорить ddrescue

487
badluck

Я пытаюсь сделать резервную копию моего внешнего USB HDD Maxtor M3 4TB, используя ddrescue.

Вначале у меня было около 300 кБ / с, поэтому я разорвал внешний блок и подключил диск напрямую через SATA к своему рабочему столу, что повысило скорость до 700 кБ / с. После игры с -a (минимальная скорость чтения) -b (размер блока) -c (количество секторов для копирования за раз) я пришел к

-a 20M -b 4096B -c 2048 

Вышеупомянутая комбинация увеличила скорость примерно до 1800 кБ / с. Кроме того, текущая скорость колеблется от нескольких байтов / с до 115 МБ / с, а общее среднее значение остается на отметке 1800 кБ / с. Такое ощущение, что он читает с нормальной скоростью «здорового диска» в течение секунды, а затем зависает, ожидая некоторого тайм-аута и продолжая сниженную скорость.

У вас есть опыт работы с другими параметрами, которые помогают улучшить показатель? Так как весь накопитель объемом 4 ТБ займет около месяца при текущей скорости, любое улучшение высоко ценится.

РЕДАКТИРОВАТЬ - Полная команда

Полная команда

sudo ddrescue -a 20M -b 4096 -c 2048 -f -n -vv /dev/sdi /dev/sdh video_drive.log 
0
Если диск поврежден, вам просто нужно ждать повторных попыток ... DavidPostill 5 лет назад 0
Я добавил полную команду. Как я понимаю, "-n" пропускает повторные попытки, поэтому оно не должно влиять на него при первом проходе, верно? badluck 5 лет назад 0
Возможный дубликат [Есть ли способ ускорить ddrescue?] (Https://superuser.com/questions/413650/is-there-any-way-to-speed-up-ddrescue) Kamil Maciorowski 5 лет назад 1
@KamilMaciorowski это, возможно, дубликат, но разница в том, что я не получаю ошибок, это просто очень медленно. Вот почему я подумал, что, возможно, есть способ ускорить процесс. badluck 5 лет назад 0

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

1
Daniel B

Когда ddrescueчитает диск, он должен прочитать каждый блок. Он не может знать заранее, какие блоки плохие. Так что он неизбежно попытается прочитать плохой блок. Диск будет очень стараться правильно прочитать этот блок, прежде чем сдаться и вернуть ошибку. Это поведение нельзя отключить или контролировать на жестких дисках потребительского уровня.

Таким образом, даже без ddrescueповторных попыток плохие блоки сильно замедляют процесс. Вы ничего не можете сделать, кроме как продолжать идти.

Когда он читает плохой блок, он увеличивает «ошибки», верно? Но так как параметр `errors` не увеличивается, я предполагаю, что он не сталкивается с какой-либо ошибкой. badluck 5 лет назад 0
Жесткий диск также всегда может сделать эти блоки читабельными! Что было бы еще лучше для вас, потому что вы получите данные. Daniel B 5 лет назад 0