3.4.16 Безопасное удаление файлов
shred
wipe
Дополнительные утилиты
srm
sfill
sswap
Окружение
- Версия ОС: 8
- Конфигурация ОС: Рабочая станция, Сервер графический, Сервер минимальный
- Редакция ОС: Все
Удаление файлов и каталогов с помощью команд rm и find не гарантирует того, что удаленные объекты не могут быть восстановлены. Для безопасного гарантированного удаления файлов и каталогов без возможности восстановления необходимо использовать утилиты shred и wipe.
Вы можете подробнее ознакомиться с работой утилит, предназначенных для безопасного удаления файлов, просмотрев наши обучающие видео:
-
на RuTube — Полное и необратимое удаление данных с дисков;
-
в Яндекс.Дзен — Полное и необратимое удаление данных с дисков;
-
в VK Видео — Полное и необратимое удаление данных с дисков.
На наших каналах вы также сможете найти много другой полезной информации.
shred
shred — переписывает несколько раз указанные файлы для того, чтобы сделать более сложным восстановление.
Синтаксис:
shred [<КЛЮЧ>] <ФАЙЛ>
Ключи:
-
-f,--force— изменять права, разрешая запись, если необходимо; -
-n,--iterations=N— выполнить N циклов перезаписи содержимого (по умолчанию 3). На современных устройствах хранения одного цикла перезаписи (N=1) должно быть достаточно, однако минимально рекомендуемое количество циклов перезаписи - 3. ПриN > 25все внутренние шаблоны перезаписи будут использованы хотя бы один раз; -
--random-source=<ФАЙЛ>— получать случайные числа из <ФАЙЛА> (по умолчанию /dev/urandom); -
-s,--size=N— очистить N байт (возможны суффиксы вида K, M, G); -
-u— освобождать и удалять файл после перезаписи; -
--remove[=<способ_удаления>]— подобно-u, но задаётся способ удаления; -
-v,--verbose— показывать ход выполнения; -
-x,--exact— не округлять размеры файлов до следующего целого блока; -
-z,--zero— перезаписать в конце нулями, чтобы скрыть измельчение; -
--help— показать справку и выйти; -
--version— показать информацию о версии и выйти.
wipe
wipe — это небольшая программа для безопасного стирания файлов с магнитных носителей.
Синтаксис:
wipe [<опции>] файлы...
Опции:
-
-a— прервать при ошибке; -
-b <buffer-size-lg2>— установить размер индивидуального буфера ввода/вывода указав его логарифм по основанию 2. Могут быть выделены до 30 этих буферов; -
-c— делатьchmod()на защищённых от записи файлах; -
-D— следовать символическим ссылкам (конфликтует с-r); -
-e— использовать точный размер файла: не округлять размер файла для стирания возможного мусора, остающегося на последнем блоке; -
-f— форсировать, т. е. не спрашивать подтверждения; -
-F— не пытаться стирать имена файлов; -
-h— показать справку; -
-i— информативный (подробный) режим; -
-k— сохранить файлы, т. е. не удалять их после перезаписи, -
-l <длина>— установить длину стирания на<длину>байт, где<длина>— это целое число, за которым следует K (Kilo:1024), M (Mega:K^2) или G (Giga:K^3); -
-M (l|r)— установить алгоритмPRNGдля заполнения блоков (и порядка проходов): -
l— использовать вызов библиотекиrandom(); a— использовать алгоритм шифрованияarcfour.
-
-o <сдвиг>— установить сдвиг очистки на<сдвиг>, где<сдвиг>имеет тот же формат, что и<длина>; -
-P <проходы>— установить количество проходов для очистки имени файла. По умолчанию 1; -
-Q <количество>— установить количество проходов для быстрой очистки; -
-q— быстрая очистка, менее безопасная, по умолчанию 4 случайных прохода; -
-r— рекурсия по каталогам — по символическим ссылкам не будет переходов; -
-R— установить устройство рандомизации (или команду сидов рандомизации-S c); -
-S (r|c|p)— метод рандомизации сидов: -
r— считывать с устройства рандомизации (надёжно); -
c— считывать из вывода команды рандомизации сидов; -
p— использоватьpid(),clock()и т.д. (самый слабый вариант). -
-s— тихий режим — подавлять весь вывод; -
-T <попытки>— установить максимальное число попыток для свободного поиска имени файла, по умолчанию 10; -
-v— показать информацию о версии; -
-Z— не пытаться стирать имя файла.
Дополнительные утилиты
Также для безопасного удаления данных можно использовать утилиты пакета secure-delete: srm, sfill, sswap, которые безопасно очищают файлы, диски, раздел подкачки и память.
srm
srm выполняет безопасную перезапись/переименование/удаление целевого файла(ов).
Синтаксис:
srm [<опции>] <файл_1> <файл_2> ...
Опции:
-
-d— игнорировать специальные файлы "." и ".."; -
-f— быстрый (и небезопасный режим): без /dev/urandom, без режима синхронизации; -
-r,-R,--recursive— рекурсивный режим, удаляет содержимое директорий; -
-v— подробный режим; -
-V— показать информацию о версии.
sfill
sfill выполняет безопасную перезапись свободного пространства на разделе, в котором находится указанная директория и всех свободных индексных дескрипторов (inode) указанного каталога.
Синтаксис:
sfill [-fiIlvz] <каталог>
Опции:
-
-f— быстрый (и небезопасный режим): без /dev/urandom, без режима синхронизации; -
-i— стирает только индексные дескрипторы в указанной директории; -
-I— стирает только пространство, без индексных дескрипторов; -
-l— снижение уровня безопасности (используйте дважды для включения небезопасного режима); -
-v— подробный режим; -
-z— последний проход заполняет нулями вместо рандомных данных.
sswap
sswap делает безопасную перезапись раздела подкачки.
Синтаксис:
sswap [-flvz] [-j start] /dev/of_swap_device
Опции:
-
-f— быстрый (и небезопасный режим): без /dev/urandom, без режима синхронизации; -
-j— при очистке перепрыгнуть через это количество первых байт (по умолчанию 4096); -
-l— снижение уровня безопасности (используйте дважды для включения небезопасного режима); -
-v— подробный режим; -
-z— последний проход заполняет нулями вместо рандомных данных.
Дата последнего изменения: 18.12.2025
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.