2015-07-13 7 views
-1

Я пытаюсь выполнить изображение на жестком диске, который не работает. Проблема, с которой я сталкиваюсь, приводит к сбою программы, поскольку диск будет периодически падать во время процесса изображения, и когда он будет повторно распознан системой, он находится под другим адресом (теперь/dev/sdb/dev/sde).dd imaging сбойный диск, который отключает соединение

Я пытался обработать каждый раздел независимо друг от друга, но на диске 500 ГБ. Я пытаюсь пройти 100 ГБ сессии до того, как диск упадет (я думаю, что голова идет, когда она нажимает).

Мой вопрос в том, что если вы используете dd, есть способ изображения диска, разбивая его на 50GB частей, чтобы я мог получить весь диск по нескольким изображениям, а затем consolodate.

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

Я нашел мало информации по этой теме, поэтому любое понимание было бы полезно.

Спасибо.

+0

Это не программирование, а административный вопрос. Так что это не по теме для StackOverflow! –

+0

Почему он не мигрировал? – ypnos

ответ

0

Когда устройство потеряно, ваш поток также будет потерян. Вы не можете восстановить его, даже если ему присвоено то же имя устройства. Однако вы можете использовать правила udev, чтобы получить то же имя обратно только для вашего удобства.

В дде, можно использовать четыре полезные параметры:

  • BS = байты размера "блок"
  • пропустить = N числа блоков, чтобы пропустить на входе
  • seek = N количество блоков для пропускания на выходе
  • кол-во = N количество блоков для копирования (мы здесь не нужен)

Кроме того, dd имеет, хотя и немного скрытую, функцию предоставления отчетов о ходе работы. Вы можете использовать «статус = прогресс» или отправить сигнал процессу. Последнее сложнее, но позволяет определить частоту отчетов о ходе работы. Например, вы можете сделать это в другом терминале:

for ((;;)); do sleep 1; kill -USR1 `pidof -s dd`; done 

Собирает все это вместе, вы можете использовать bs=4M в качестве разумного размера блока. Затем вы можете запустить вышеупомянутую команду в дополнительном терминале, а затем начать Д.Д., первоначально с

dd bs=4M seek=0 skip=0 if=/dev/… of=… 

После он не в первый раз, вы используете последний номер блока, который был успешно скопирован дд, как параметры поиска и пропуска. Вы можете быть немного консервативны здесь (немного уменьшите число), чтобы гарантировать, что вы не получите никаких «дыр» в своем выходе.

Повторяйте, пока весь диск не будет выполнен. Удачи!

+0

Спасибо за это, это то, что я искал для! – Craig155