2

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

4 ответа4

3

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

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

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

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

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

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

2

Вы можете использовать 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 для этого.

1

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

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

0

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

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

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