Безвозвратное удаление файлов linux

Безвозвратное удаление файлов в Linux

Если вам нужно безвозвратно удалить файл/каталог или же затереть весь жесткий диск, то вам подойдет утилита Shred.

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

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

Примеры запуска Shred

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

Удалить файл passwords.txt:
-z — в конце перезаписать нулями, чтобы скрыть то, что вы зачищали файл;
-v — показывать ход выполнения;
-u — обрезать и удалить файл после перезаписи;
5 — переписать 5 раз (по умолчанию — 3).

Стирание всей информации с HDD

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

Безвозвратное удаление каталога

К сожалению, Shred не умеет удалять каталоги. Чтобы удалить каталог нам поможет утилита wipe:

Источник

Как удалить файл через терминал Linux

Управление операционной системой Linux осуществляется благодаря терминалу, посредством множества разнообразных команд и стандартных утилит. Что касается процедуры удаления файла, то она относится к разряду элементарных задач, однако не каждый владеет необходимыми знаниями для осуществления данной затеи.

Удаление через rm

Для удаления файла, необходимо ввести команду rm и название документа.

Данная команда удалит dokument, с некоторыми особенностями:

  • Интерпретатор запросит подтверждение на операцию.
  • В примере предполагается, что dokument находится в домашнем каталоге как и пользователь (/root/).

Удалим файл «newfile» из каталога /usr/games.

Удалить все файлы в папке.

Ключ «-f» даст возможность не выводить запрос на подтверждение операции. Однако, команда выше очистит только все файлы из каталога «games» не трогая директории.

Если нужно очистить систему от всех файлов, которые заканчиваются «.doc», следует приписать в самом конце команды символ «*», без пробела.

rm -f /usr/games/*.doc

Утилита Remove (rm) требует особой осторожности в работе. При халатном отношении к делу пользователь может навсегда стереть важные файлы.

Чтобы подобный казус не случился, рекомендуется совершать удаление файлов при помощи стандартной программы rm с добавлением опции -i. Она станет некой перестраховкой в данном вопросе – система начнет запрашивать подтверждение пользователя перед удалением файлов из каталога. Как это выглядит на практике:

Если пользователю не нужен запрос на подтверждение, и он на 100% уверен в правильности своих дальнейших действий, можно вписать в команду опцию с противоположным воздействием на процесс (-f).

rm -i /usr/games/*.doc

Удаление через find

Для реализации задуманного можно воспользоваться еще одной альтернативной программой find. Кроме того, она пригодится даже там, где rm не осилит поставленную задачу. Её синтаксис выглядит следующим образом:

Читайте также:  Windows запретить перемещение папки

$ find папка критерий действие

К примеру, пользователю нужно очистить текущий каталог от всех файлов с названием «file». Их можно найти и уничтожить следующим способом:

find . -type f -name «file» -delete

Чтобы удалить устаревшие логи (то есть, файлы старше конкретного срока), используйте специальную команду в виде:

$ find /path/to/files* -mtime +5 –exec rm <> \;

Исходя из заданной команды, можно понять, что Линукс удалит из текущего каталога все файлы, «возраст» которых превышает 5 дней. Вот видите, как легко управлять устройством посредством терминала!

Иногда в Linux наличествуют файлы, восстановление которых не имеет ни малейшей актуальности посте чистки ПК. То есть, от них нужно избавиться раз и навсегда. Если использовать ранее упомянутую программу rm, то ничего не получится, поскольку она удаляет лишь ссылку на файл, сохраняя при этом его содержимое в памяти устройства. Он все еще будет поддаваться восстановлению, ровно до того момента, пока Линукс не перезапишет его иной информацией.

Через shred

Чтобы очистить систему от документа без возможности его дальнейшего восстановления, нужно использовать специальную команду под названием «shred». Как только срабатывает команда, файл удаляется, и система неоднократно перезаписывает его место на диске. Как это выглядит на практике:

Что происходит далее? Система перезаписывает место на диске 3 раза (по умолчанию), но это количество поддается коррективам. Используйте опцию -n, если нужно что-то поменять. Добавление опции -z также повлияет на итоговый результат. С ней система запишет место на диске нулями, чтобы никто не мог догадаться о том, что определенный файл был уничтожен пользователем.

Источник

aboutubuntu.ru

Подпишитесь на RSS

VDS с Ubuntu Server

Мы работаем на виртуальном выделенном сервере от TrueVDS с Ubuntu на борту. Всем довольны и другим рекомендуем.

Вход в систему

Ubuntu 10.04 LTS

Наши посетители

Подпишитесь на комментарии

RSS всех комментариев:

Поиск

А вот зарегистрированные пользователи не утруждают себя просмотром рекламной информации на этом сайте.

Удаление файлов без возможности восстановления в Linux

Когда приходится удалять файлы без возможности восстановления? Ситуаций можно придумать много, кроме шпионских сценариев из разряда «когда вам действительное есть, что скрывать от спецслужб» могу предложить пару более заурядных ситуаций: вы продаёте ноутбук или компьютер и не хотите, чтобы новый владелец старого девайса любовался вашими семейными фотками, восстановленными с незатёртого пространства жесткого диска, либо вы отказываетесь от аренды сервера, после чего он попадёт в руки к новым владельцам (а вы, опять же, не хотите, чтобы новый админ докопался до ваших данных).

Когда приходится удалять файлы без возможности восстановления? Ситуаций можно придумать много, кроме шпионских сценариев из разряда «когда вам действительное есть, что скрывать от спецслужб» могу предложить пару более заурядных ситуаций: вы продаёте ноутбук или компьютер и не хотите, чтобы новый владелец старого девайса любовался вашими семейными фотками, восстановленными с не затёртого пространства жесткого диска, либо вы отказываетесь от аренды сервера, после чего он попадёт в руки к новым владельцам (а вы, опять же, не хотите, чтобы новый админ докопался до ваших данных).

Linux предлагает много инструментов для надёжного удаления файлов и прочих данных без возможности восстановления, но мы рассмотрим один весьма универсальный — Secure Delete Tools.

Устанавливается, как обычно, просто:

sudo apt-get install secure-delete

После установки пакета в вашем арсенале появится 4 утилиты:

  • sfill — для очистки от следов удаленных данных свободного места
  • srm — для надёжного удаления файлов и директорий
  • smem — для очистки оперативной памяти
  • sswap — для очистки раздела подкачки (свопа)
Читайте также:  Сканер ip адресов линукс

Утилита 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 (для очистки данных из ОЗУ, в упомянутом выше докладе рассказывается, что не такая уж она и энергонезависимая) имеет несколько ключей, чтоб запустить её в однопроходном режиме используйте:

Утилита sswap вычищает раздел подкачки, но чтобы его почистить нужно его сначала отмонтировать.

Следующей командой можно посмотреть раздел со свопом:

Затем отключить своп (при условии, что он у вас на /dev/sda2 ):

sudo swapoff /dev/sda2

Затем своп можно надёжно вычистить:

sudo sswap -l -l /dev/sda2

Как вы поняли, тут ключи -l -l тоже отвечают за единственный (и поэтому быстрый) проход.

После чего, своп включить обратно:

sudo swapon /dev/sda2

И, наконец, утилитой sfill вы можете почистить всё свободное место после обычного удаления в директории или даже на разделе, например так (внимание! следующая команда создаст огромный файл, который займёт всё свободное место на вашем диске):

Вместо заключения хочу сказать, что удаление данных по методу Гутмана — это очень и очень долго, а упрощенное удаление в пару проходов — просто долго (несколько часов потребуется для полного затирания диска). Так что если, например, вы освобождаете сервер, то начинайте очистку как минимум за сутки перед тем моментом, когда потеряете к нему доступ. А если вы «плохой парень», то быстро уничтожить данные сможете только разбив носитель физически, поломав при этом чипы в SSD или пластины в HDD.

Также не забывайте, что надёжное и безопасное удаление данных лишит доступа к ним не только злоумышленников, но и вас (если вдруг вы сотрёте нечто ценное и представленное в единственном экземпляре, то не сможете это восстановить). Так что делайте и надёжно храните резервные копии.

Источник

Программа для безвозвратного удаления файлов

Ubuntu 10.04 Подскажите программку для этого дела. В винде пользовался Eraser’ом. Довольно удобная программа. Есть ли под Linux что-нибудь подобное, надежное?

Не понял, shift + del не подходит? Или что ТС имел ввиду?

Вам следует обратить внимание на программу dd и виртуальные устройства zero и urandom. Первое возвращает нули, а второе — случайный мусор. Смысл в перезаписи содержимого файла некоторыми данными с последующим штатным удалением.

абсолютно надёжной программы такого рода существовать не может. Те что есть (e.g. man shred) по никому не понятным причинам полагают что файловая система ведёт себя как простейшая FAT и при перезаписи переписывает сектора поверх старых. В реальности этого может и не происходить, а есть такие FS в которых это ГАРАНТИРОВАННО не происходит (nilfs). Так что единственный надёжный способ стереть — залить весь диск из /dev/zero или /dev/urandom или молоток.

Читайте также:  Лучший линукс для старого компьютера

Перфоратором по винчестеру.

на них не действует твой shred: JFS, ReiserFS, XFS, Ext3, RAID-based filesystems и прочее

Зачем же так грубо? Хватит размагничивающей катушки :).

Да, кстати, про nilfs уже говорили, а я добавлю про SSD: их контроллеры следят за более-менее равномерным использованием блоков. Поэтому вероятность того, что при стирании файла тем же shred’ом мусором забьются именно блоки, принадлежащие файлу, достаточно мала.

>на них не действует твой shred: JFS, ReiserFS, XFS, Ext3, RAID-based filesystems и прочее

Может быть, вообще стоит сделать один tar-архив на весь раздел? 😉

Тогда при удалении файла весь архив будет переписан и следов гарантированно не останется (а хвост архива можно будет мусором дополнить).

Зачем такой изврат? Необходимое и обычно достаточное условие — после удаления файла забивать мусором _все_ свободное место на разделе.

после удаления файла забивать мусором _все_ свободное место на разделе.

А как программа узнает, что это место никому не принадлежит? Значит, надо делать файловую систему с поддержкой такой функции удаления. Правда, могу себе представить, сколько будет длиться удаление одного файлика с двухтерабайтного раздела, заполненного процентов на 10 🙂

Не проще ли шифровать раздел?

chattr +s на каталог, а потом просто удалять. Если FS это поддерживает, конечно.

> В винде пользовался Eraser’ом.
Аналога именно этой мышевозной перделки нет.

Если действительно нужна такая секурность, то ищем ОС Атликс (по-моему это переделанный RH7 на ядре 2.4) — там такая секурность реализована. Вплоть до заполнения раздела свопа нулями или мусором (уж чем именно — незнаю, исходников не видел) во время выключения.
Я видел однажды эту ОС в вариантах «для серверов/спецоборудования» и «для рабочих станций». Больших изменений, по сравнению с RH она не внешне не притерпела.
Наводки:
1. сайт производителя: http://web.stcnet.ru/ Правда, о самой ОС там почти ничего нет
2. Описание: http://www.quadricom.irnd.ru/page38.html
3. Попробуйте найти ее в свободном доступе (в чём я сомневаюсь, хотя на торентсру/руторент всяко бывает), а лучше купите.

Позвольте полюбопытствовать: к чему такая паранойя дома? В убунту 10.04 в качестве корпоративного стандарта в конторе с описанной вами степенью секъюрности не верю.

В домашних условиях проще полчасика в духовке подержать.

> Если действительно нужна такая секурность, то ищем . RH7 на ядре 2.4

для анабиозников: с тех пор изобрели dm-crypt и LUKS. Никакого спец-мусора для свапа и неизпользованного места не надо — просто вся система кроме /boot ставится на шифрованный partition и всё. Если не хочешь при загрузке вводить пароль — подправь initrd, тогда это будет больше похоже на BitLocker в винде.

В домашних условиях проще полчасика в духовке подержать.

на них не действует твой shred: JFS, ReiserFS, XFS, Ext3, RAID-based filesystems и прочее

Гон. И про рейд брехня(с хрена рейду мапингом блоков заниматься?) и с ext3 я тока что проверил. По остальным, думаю, тоже самое.

Разовая перезапись данных на диске может не спасти.
Поищите информацию по восстановлению данных с диска. Что то в духе — с диска делают фотку магнитных полей. По фотке программно восстанавливают то что было на диске. Прикол в том, что головка не всегда пробегает по одному и тому же месту на дорожке, с края дорожки могут остаться старые данные.

А ещё, по остаточной намагниченности можно данные восстановить, да.

Источник

Оцените статью