shred
shred — утилита Unix, перезаписывающая указанный файл случайными данными, чтобы скрыть его содержимое, и в случае необходимости удаляющая его.
Описание[править | править код]
shred [ключи] [файл]
Утилита предназначена для перезаписи указанного файа несколько раз, чтобы сделать его более трудным даже для очень дорогого аппаратного зондирования для восстановления данных[1].
Опция | Описание |
---|---|
-f, --force | Изменение прав записи на файл. |
-x, –exact | Не округлять размеры файлов до следующего целого блока; по умолчанию для не-регулярных файлов |
- z, –zero | Перезаписать конец файла нулями, чтобы скрыть затирание файла |
-v, –verbose | Показывать ход выполнения. |
-s, –size | Очистить N байт (возможны суффиксы вида K, M, G). |
-n, –iterations=N | Количество циклов перезаписи (по умолчанию — 25) |
-u, –remove | Удаляет файл после его перезаписи. |
--remove=N | Подобно -u , но задаёт как удалить файл. Может принимать следующие параметры:
|
--help | Выдать подсказку на стандартный вывод и успешно завершиться. |
--version | Выдать информацию о версии на стандартный вывод и успешно завершиться. |
Пример использования[править | править код]
После выполнения данной команды:
shred -z -v -u -n 5 test
Файл перезапишется нулями, будет показан ход выполнения, он будет удалён после перезаписи, но перед этим он перезапишется 5 раз.
Применение[править | править код]
Данная утилита может выступать более безопасным аналогом команды rm
. Удаление файла командой rm не уничтожает его в действительности, а уничтожает лишь индекс, указывающий месторасположение этого файла на жестком диске и в случае необходимости операционная система запишет на это место новый файл, и данные находящиеся там будут потеряны. Но до тех пор пока перезаписи не произошло, файл можно будет восстановить. Но утилита shred
многократно перезаписывает место, занимаемое удаляемым файлом.
Поддержка файловыми системами[править | править код]
shred
полагается на предположение, что ваша файловая система перезаписывает файлы «на месте». Традиционно это так, но многие современные файловые системы не удовлетворяют этому условию.
Ниже приведены примеры файловых систем, на которых shred
не эффективен или не даёт гарантии эффективности во всех режимах файловой системы[2]:
- Протоколируемые или журналируемые файловые системы, которые идут в комплекте (AIX, JFS, ReiserFS, XFS, Ext3, и др.)
- Файловые системы, которые записывают избыточные данные и сохраняют работоспособность даже если случаются неудачные записи, например, файловые системы, основанные на технологии RAID.
- Файловые системы, создающие копии состояния, такие как NFS-сервер от Network Appliance.
- Файловые системы, кэширующие файлы во временных хранилищах, такие как NFS версии 3 и др.
- Сжатые файловые системы.