4

Я хочу использовать dd, чтобы сделать клон неисправного жесткого диска. Я обеспокоен тем, что наверняка будут плохие блоки. Так что мой вопрос с dd оставит ли плохой блок пробел в размере выбранного размера блока (бс), или он будет таким же большим, как сектор жесткого диска?

1 ответ1

3

Я уверен, что это будет больше из двух.

Допустим, вы используете 512-байтовый размер блока в dd , но ваш диск использует 4K сектора, и один из них плохой. Все четыре чтения по 512 байт, которые dd пытается сделать из этого сектора 4K, потерпят неудачу, что приведет к разрыву в 4K.

Теперь предположим, что вы используете блок размером 8K dd но ваш диск использует сектора 4K. Когда dd пытается выполнить чтение 8K, произойдет сбой, потому что один из секторов в чтении потерпел неудачу, что привело к разрыву в 8K.

Вероятно, сейчас самое время упомянуть GNU ddrescue (не путать с одноименным программным обеспечением, отличным от GNU), которое в основном автоматизирует использование dd для восстановления неисправного диска с помощью нескольких приемов повышения эффективности. Он начинается с большого размера блока для скорости, но он отслеживает, где он видел плохие блоки, а затем возвращается, чтобы попытаться прочитать различные их части с меньшими размерами чтения, пока не дойдет до списка абсолютно нечитаемых 512-байтных. блоки. Мне потребовалось некоторое время, чтобы разобраться с документацией, но как только я понял это, я обнаружил, что это очень полезный инструмент и очень предпочтительнее, чем использование dd напрямую для этой задачи.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .