Утилита shred

Изображение пользователя trubadur4ik.

Shred – несмотря на некоторые ограничения, команда shred может быть полезной для уничтожения файлов. Файлы, удаленные этой утилитой, восстанавливаются с трудом или не восстанавливаются вообще. Shred выполняет удаление указанных файлов путем их многократной перезаписи. Удаление файла командой rm не уничтожает его в действительности. Уничтожается лишь индекс, указывающий месторасположение этого файла на жестком диске и таким образов операционной системе дается знать, что место, ранее занимаемое этим файлом, освободилось и туда можно записывать новые данные, при необходимости. Операционная система так и поступит – при первом удобном случае, если посчитает нужным, она запишет на это место новый файл. И данные, которые были до этого момента на этой части диска, уже будут потеряны почти наверняка. Но, покуда перезаписи не произошло, еще не все потеряно. Поэтому, файлы, удаленные таким образом, можно восстановить с помощью специальных утилит. Чтобы этого не произошло, утилита shred поступает именно так, как операционная система, но более целенаправленно – она многократно перезаписывает по определенным алгоритмам ничего незначащими данными (один из случаев – нулями) место, занимаемое удаляемым файлом. Данные при этом теряются безвозвратно (насколько я читал, даже в этом случае имеется возможность их восстановить, но в домашних условиях это абсолютно не реально. Такие инструменты имеются в арсенале спецслужб). У shred имеется также фитча для скрытия факта перезаписи (затирания) файла.

Опции shred:
- f, –force – изменение прав записи на файл, если это необходимо
- n, –iterations=N – колличество циклов перезаписи (по умолчанию – 25)
- u, –remove – удаляет файл после его перезаписи
- v, –verbose – показывать процесс выполнения
- s, –size – очистить N байт
- x, –exact – не округлять размеры файлов до следующего целого блока; по умолчанию для не-регулярных файлов
- z, –zero – перезаписать конец файла нулями, чтобы скрыть затирание файла
–help – показать справку
–version – показать версию утилиты

По умолчанию, при использовании утилиты shred, файлы не удаляются, а только перезаписываются, так как этой утилитой часто обрабатываются файлы-устройства, а такие файлы нельзя удалять. Для удаления файлов необходимо указать опцию -u (–remove).

Принцип работы утилиты shred основывается на предположении – файловая система перезаписывает файлы «на месте». Но большинство современных файловых систем не удовлетворяют этому условию. Файловые системы ext3\ext4 являются журналируемыми, поэтому shred малоэффективен с ними. Опция включения режима журналирования в этих системах – data=journal – кроме метаданных журналируются также и сами данные файлов. Именно в этом режиме утилита shred малополезна. В режимах data=ordered (по умолчанию) и data=writeback, программа shred работает как обычно, то есть, вполне надежно удаляет файлы. Режимы журналирования ext3 можно изменить добавлением опции data=режим к параметрам монтирования отдельной файловой системы в файле /etc/fstab.

Пример:

$ shred -u -n10 -v /path/to/file/filename
где,
-u – удалить файл
-n10 – перезаписать 10 раз
-v – показать процесс удаления файла
-filename – удаляемый файл

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры