Как стереть жесткий диск с неперезаписываемыми секторами?

Таким образом, у меня есть жесткий диск, который перестал работать. Я хочу стереть данные по нему прежде, чем отправить его за заменой. Я пытаюсь использовать dd if=/dev/zero of=/dev/sdXX, но это останавливается в первой ошибке при записи. Как я могу перезаписать диск с нулями, игнорируя ошибки при записи? conv=noerror кажется, только влияет на входной файл.

21
задан 15.12.2010, 14:04

4 ответа

попробуйте ddrescue вместо dd - он пробует тяжелее ошибками

18
ответ дан 07.12.2019, 10:01

Если Вы просто надеетесь вытирать попытку диска dban

От сайта:

Начальная загрузка и Уничтожение Darik ("DBAN") являются автономным загрузочным диском, который надежно вытирает жесткие диски большинства компьютеров. DBAN автоматически и полностью удалит содержание любого жесткого диска, который он может обнаружить, который делает его соответствующей утилитой для объемного или чрезвычайного разрушения данных.

3
ответ дан 07.12.2019, 10:01

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

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

   seek=BLOCKS
          skip BLOCKS obs-sized blocks at start of output
1
ответ дан 07.12.2019, 10:01

Для записи, dd также имеет опцию conv=noerror пропускать ошибки. Если у Вас были ошибки на входном файле и если не использование /dev/zero, Вы хотели бы использовать conv=noerror,notrunc или conv=noerror,sync препятствовать тому, чтобы dd усек выходной файл, где ошибки существуют на входном файле.

Для Вашего запроса Вы могли бы попробовать эту команду вместо этого:

dd if=/dev/zero of=/dev/sdXX conv=noerror  

Чтобы ускорить процесс и потенциально избежать диска, перестающего работать в середине шага, Вы могли бы также попытаться увеличить размер байта со значения по умолчанию 512 (который делает сектор сектором чтения dd, который является медленным) к чему-то большему, такому как 4K (который, является в восемь раз более большим):

dd if=/dev/zero of=/dev/sdXX bs=4K conv=noerror  

Примечание: С большим размером байта пропущенные ошибки могут оставить разделы читаемых данных немного меньше, чем размер байта, который Вы выбираете, но все еще маловероятно, что любой смог бы получить что-либо от тех разделов после того, как весь диск был выполнен посредством процесса.

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

3
ответ дан 07.12.2019, 10:01

Теги

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