Linux предлагает много инструментов для надёжного удаления файлов и прочих данных без возможности восстановления, но мы рассмотрим один весьма универсальный — Secure Delete Tools.
Устанавливается, как обычно, просто:
sudo apt-get install secure-delete
После установки пакета в вашем арсенале появится 4 утилиты:
sfill— для очистки от следов удаленных данных свободного местаsrm— для надёжного удаления файлов и директорийsmem— для очистки оперативной памятиsswap— для очистки раздела подкачки (свопа)
Утилита srm работает как rm только безопаснее.
В зависимости от настроек поверх удаляемых данных записываются случайные данные или стандартные паттерны типа 0x00,0xFF в один или несколько проходов. Я вот, кстати, до того, как с задачей столкнулся, думал, что одного прохода с перезаписью случайных данных поверх исходных — вполне достаточно для счастья, но, оказывается, что нет: проходов нужно аж 35. На эту тему есть известный (и уже классический, из 1996 года) доклад — Secure Deletion of Data from Magnetic and Solid-State Memory от криптографа Питера Гутмана (Peter Gutmann). По умолчанию утилиты пакета secure-delete используют алгоритм стирания, предложенный в докладе Гутмана.
Соответственно, чтобы надёжно стереть директорию просто используйте srm вместо rm, примерно так:
srm -r /home/user/private-photos
Однако, по моему скромному мнению, для гражданского применения хватит и одного прохода (ведь выполняется он в разы быстрее), утилита такое умеет, надо лишь добавить ключ s (--simple):
srm -sr /home/user/private-photos
Кроме режима -s есть ещё один упрощенный режим -m, делающий «всего лишь» 7 проходов.
Утилита smem (для очистки данных из ОЗУ, в упомянутом выше докладе рассказывается, что не такая уж она и энергонезависимая) имеет несколько ключей, чтоб запустить её в однопроходном режиме используйте:
sudo smem -l -l
Утилита sswap вычищает раздел подкачки, но чтобы его почистить нужно его сначала отмонтировать.
Следующей командой можно посмотреть раздел со свопом:
cat /proc/swaps
Затем отключить своп (при условии, что он у вас на /dev/sda2):
sudo swapoff /dev/sda2
Затем своп можно надёжно вычистить:
sudo sswap -l -l /dev/sda2
Как вы поняли, тут ключи -l -l тоже отвечают за единственный (и поэтому быстрый) проход.
После чего, своп включить обратно:
sudo swapon /dev/sda2
И, наконец, утилитой sfill вы можете почистить всё свободное место после обычного удаления в директории или даже на разделе, например так (внимание! следующая команда создаст огромный файл, который займёт всё свободное место на вашем диске):
sudo sfill -l -l /
Вместо заключения хочу сказать, что удаление данных по методу Гутмана — это очень и очень долго, а упрощенное удаление в пару проходов — просто долго (несколько часов потребуется для полного затирания диска). Так что если, например, вы освобождаете сервер, то начинайте очистку как минимум за сутки перед тем моментом, когда потеряете к нему доступ. А если вы «плохой парень», то быстро уничтожить данные сможете только разбив носитель физически, поломав при этом чипы в SSD или пластины в HDD.
Также не забывайте, что надёжное и безопасное удаление данных лишит доступа к ним не только злоумышленников, но и вас (если вдруг вы сотрёте нечто ценное и представленное в единственном экземпляре, то не сможете это восстановить). Так что делайте и надёжно храните резервные копии.
http://www.aboutubuntu.ru/secure-deletion-of-data-in-linux.html