Shred и безвозвратное удаление файлов

в 1:30, , рубрики: linux, Ubuntu, линукс, Песочница, Убунтариум, метки: ,

Немного предыстории. Обладая неслабой паранойей, я заморочился мыслью о том, каким образом можно раз и навсегда удалить файлы с жёсткого диска в ОС Ubuntu.

Моя проблема состояла в том, что я уже удалил конфиденциальные файлы, а только потом узнал, как нужно было всё сделать правильно. Но и на этот случай нашёлся способ. Итак, знакомьтесь — команда shred.

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

Shred случайными числами заполняет место, занятое файлом. И уже, даже восстановив ваш удалённый файл, его будет невозможно прочитать. По умолчанию shred не удаляет файл, для этого используется параметр --remove (-u).

shred -u /path/to/file

В shred заложен 25-тикратный цикл, то есть программа перезапишет файл случайным содержимым 25 раз. Чтобы изменить это значение, например на 35-тикратный:

shred -u -n 35 /path/to/file


Если ваша паранойя достигла ещё бОльшего уровня, то вам подойдут следующие советы.

Чтобы спрятать информацию о том, что вы зачищали файл, используйте параметр -z, добавляющий нули в конец файла — это сделает файл непохожим на зашифрованный. Если вам интересно наблюдать за процессом перезаписи, параметр -v (verbose) служит для подробного вывода информации прогресса.

shred -u -z /path/to/file

Если хотите удалить сразу несколько файлов, то укажите их в таком формате:

shred -u -z -n 30 /path/to/file1 /path/to/file2 /path/to/file3
или же можно использовать маску:
shred -u -z -n *.txt

Shred также может удалить содержимое всего жёсткого диска командой
shred /dev/sda

Естественно, время выполнения операций напрямую зависит от размера файла и скорости записи.

Единственным минусом я обнаружил то, что shred не умеет удалять каталоги. В этом нам на помощь приходит утилита wipe:
wipe -rf /path/to/catalog

Для более подробной информации используйте man shred и man wipe.


В моём случае, когда я уже удалил файлы, мне не хотелось восстанавливать файлы и потом «правильно» удалять, ввиду их большого размера. Оставалось одно — перезаписать другой информацией. Информацией, ничего в себе не несущей. В этом мне уже пришла на помощь утилита dd

dd if=/dev/zero of=/path/to/file.trash bs=1M count=1024
где значением count является нужный мне размер файла. 1024 = 1Гб, 2048 = 2Гб и т.д.

После создания файла, удалил его уже посредством shred'а.

Автор: 11101010

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js