Я пытаюсь сделать резервную копию моего внешнего жесткого диска USB 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
РЕДАКТИРОВАТЬ 2 - О, вот почему это так медленно
Привод не удается таким образом , что SMART поддержка отключена в разы, но в периоды она работает, я обратил внимание на высокую и возрастающую ценность Read Error Rate
и Hardware ECC Recovered
полей. Я полагаю, что восстановление ECC - причина, по которой я не вижу ошибок, а также причина, по которой ставка так низка.
источник
Ответы:
Когда
ddrescue
читает диск, он должен прочитать каждый блок. Он не может знать заранее, какие блоки плохие. Так что он неизбежно попытается прочитать плохой блок. Диск будет очень стараться правильно прочитать этот блок, прежде чем сдаться и вернуть ошибку. Это поведение нельзя отключить или контролировать на жестких дисках потребительского уровня.Таким образом, даже без
ddrescue
повторных попыток плохие блоки сильно замедляют процесс. Вы ничего не можете сделать, кроме как продолжать идти.источник
errors
, верно? Но так какerrors
параметр не увеличивается, я предполагаю, что он не сталкивается ни с какой ошибкой.