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

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

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

решение1

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

решение2

Параметры, которые я использовал с ddrescue для очистки диска /dev/sdb(заполнил нулями из /dev/zero) и записи вывода в файл log.txt(заменил sdXна sdb):

ddrescue --force /dev/zero /dev/sdX log.txt

решение3

Если вы просто хотите стереть данные с диска, попробуйтедбан

С сайта:

Darik's Boot and Nuke («DBAN») — это автономный загрузочный диск, который надежно стирает жесткие диски большинства компьютеров. DBAN автоматически и полностью удалит содержимое любого жесткого диска, который он сможет обнаружить, что делает его подходящей утилитой для массового или экстренного уничтожения данных.

решение4

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

Теоретически можно написать скрипт, который будет делать это автоматически, но это не так уж и тривиально, и я бы предпочел написать инструмент, который бы это делал, чем возиться с написанием скриптов.

   seek=BLOCKS
          skip BLOCKS obs-sized blocks at start of output

Связанный контент