Можно ли использовать dd для очистки каталога?

У меня есть каталог на установке Mint, который я хочу стереть (не просто удалить указатели, а фактически обнулить информацию с диска). Можно ли очистить данные с помощью dd? Например, если файлы, которые я хочу стереть, находятся по адресу /folder/folder1/*Могу ли я выполнить dd if=/dev/zero of=/folder/folder1 bs=1k и что это ноль все файлы в этом каталоге? Кроме того, если у меня есть подкаталоги, будет ли он рекурсивно обнулять все подпапки?

4 ответа

Решение

Вы можете использовать find и dd вместе для рекурсивной записи файлов по одному:

find /folder/folder1 -type f | while read line; do dd if=/dev/zero of=$line bs=1k count=1024; done

Тогда вы можете просто rm -rf родительский каталог:

rm -rf /folder/folder1

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

Вы не можете использовать dd для папки, которая предназначена для таких устройств, как раздел или файл. Если это Ubuntu, вы должны установить shred, который предназначен для того, что вы хотите сделать.

Shred работает только с файлами, поэтому вы хотите сделать:

find /folder -type f -print0 | xargs -0 shred

Ты можешь использовать shred на разделах тоже.

Есть много других инструментов, если вы не в Ubuntu. shred может быть доступно и для других дистрибутивов.

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

Я использую srm, который находится в secure-delete пакет на Ubuntu и Debian. sudo apt-get install secure-delete чтобы установить его, то srm -r $directory безопасно удалить все дерево каталогов. srm не будет перезаписывать нестандартные файлы, но будет (по умолчанию) переименовывать все файлы и каталоги в случайное значение перед их отменой.

Вы можете использовать -z флаг, чтобы он записал нули для последнего прохода и -v чтобы увидеть его прогресс. Увидеть man srm для дополнительной информации.

Нет, вы не можете использовать dd для безопасного удаления каталога, но вы можете использовать wipe,

wipe многократно перезаписывает специальные шаблоны для файлов, подлежащих уничтожению, используя вызов fsync() и / или бит O_SYNC для принудительного доступа к диску

Другие вопросы по тегам