Linux удалить файл навсегда
Обновлено: 21.11.2024
Команда rm — это обычный способ удаления файлов в операционной системе Linux. Команда rm только удаляет ссылку операционной системы на файл. Вы можете использовать специальные инструменты для восстановления файла, иногда даже после того, как он был перезаписан. Команды shred, srm и wipe можно использовать для удаления файла, чтобы его нельзя было восстановить. Эти команды перезаписывают файл несколько раз, прежде чем полностью удалить файл. Каждая команда использует другой метод для записи данных. Используйте команду очистки на любом магнитном носителе.
Измельчить
Нажмите на главное меню приложений дистрибутива.
Нажмите пункт меню "Терминал" или "Консоль", чтобы открыть окно терминала и получить доступ к командной строке.
Введите команду "shred -u -z -n 20 filename", чтобы написать случайные единицы и нули в файле 20 раз, затем написать нули во всем файле и, наконец, удалить файл. Замените «имя файла» на имя файла, который вы хотите удалить.
Нажмите на главное меню приложений дистрибутива.
Нажмите пункт меню "Терминал" или "Консоль", чтобы открыть окно терминала и получить доступ к командной строке.
Загрузите и установите пакет безопасного удаления из репозитория программного обеспечения дистрибутива. Пользователи Ubuntu и Linux Mint набирают «sudo apt-get install secure-delete», чтобы установить инструменты. Пользователи Fedora и CentOS набирают "yum install secure-delete" для установки инструментов.
Введите команду "srm filename", чтобы назначить случайное значение для имени файла и перезаписать файл случайными данными, нулями и специальными значениями, чтобы стереть все доказательства существования файла. Замените «имя файла» на имя файла, который нужно удалить.
Нажмите на главное меню приложений дистрибутива.
Нажмите пункт меню "Терминал" или "Консоль", чтобы открыть окно терминала и получить доступ к командной строке.
Загрузите и установите пакет очистки из репозитория программного обеспечения дистрибутива. Пользователи Ubuntu и Linux Mint набирают «sudo apt-get install wipe», чтобы установить пакет. Пользователи Fedora и CentOS набирают "yum install wipe" для установки пакета.
Введите команду "wipe -dkx filename", чтобы полностью удалить файл с диска. Замените «имя файла» на имя файла, который нужно удалить.
Кристен Уотерс пишет для компьютерной индустрии с 2004 года. Она написала учебные материалы как для крупных, так и для небольших компьютерных компаний, а также практические и информационные статьи для многих интернет-изданий. Она имеет степень бакалавра наук Йоркского колледжа Пенсильвании и Мэрилендского университета.
В этом руководстве показано, как использовать команды rm , unlink и rmdir для удаления файлов и каталогов в Linux.
Чтобы удалить (или удалить) файл в Linux из командной строки, используйте команду rm (удалить) или unlink.
Команда unlink позволяет удалить только один файл, а с помощью rm вы можете удалить сразу несколько файлов.
Будьте особенно осторожны при удалении файлов или каталогов, так как после удаления файла его нельзя будет легко восстановить.
Чтобы удалить один файл, используйте команду rm или unlink, за которой следует имя файла:
Если файл защищен от записи, вам будет предложено подтвердить, как показано ниже. Чтобы удалить файл, введите y и нажмите Enter. В противном случае, если файл не защищен от записи, он будет удален без запроса.
Чтобы удалить сразу несколько файлов, используйте команду rm, за которой следует имя файла, разделенное пробелом.
Вы также можете использовать подстановочный знак ( * ) и обычные расширения для сопоставления нескольких файлов. Например, чтобы удалить все файлы .pdf в текущем каталоге, используйте следующую команду:
При использовании обычных расширений сначала перечислите файлы с помощью команды ls, чтобы вы могли видеть, какие файлы будут удалены, прежде чем запускать команду rm.
Используйте rm с параметром -i для подтверждения каждого файла перед его удалением:
Чтобы удалить файлы без запроса, даже если файлы защищены от записи, передайте параметр -f (принудительно) команде rm:
Вы также можете комбинировать параметры rm. Например, чтобы удалить все файлы .txt в текущем каталоге без запроса в подробном режиме, используйте следующую команду:
В Linux вы можете удалять каталоги с помощью rmdir и rm .
rmdir — это утилита командной строки для удаления пустых каталогов, а с помощью rm вы можете рекурсивно удалять каталоги и их содержимое.
Чтобы удалить пустой каталог, используйте команду rmdir или rm -d, а затем имя каталога:
Чтобы удалить непустые каталоги и все файлы в них, используйте команду rm с параметром -r (рекурсивный):
Если каталог или файл в каталоге защищены от записи, вам будет предложено подтвердить удаление.
Чтобы удалить непустые каталоги и все файлы без запроса, используйте rm с параметрами -r (рекурсивный) и -f:
Чтобы удалить сразу несколько каталогов, используйте команду rm -r, за которой следует имя каталога, разделенное пробелом.
Как и в случае с файлами, вы также можете использовать подстановочный знак ( * ) и обычные расширения для соответствия нескольким каталогам.
К настоящему времени вы должны хорошо понимать, как использовать команды Linux rm , rmdir и unlink, и вы должны быть в состоянии безопасно удалять файлы и каталоги из командной строки.
В этом руководстве объясняется, как использовать команду shred для безвозвратного и безопасного удаления файлов, разделов и дисков в Linux. Это также объясняет, почему недостаточно удалить важные файлы с помощью команды rm.
В целом данные организованы на диске точно так же, как главы организованы в книге. В книге индексная страница используется для указания места, где хранится фактическая глава. Вместо поиска по всей книге можно легко просмотреть индексную страницу и сразу перейти на страницу, на которой находится нужная глава. Точно так же индексация используется на диске. Запись индекса сообщает операционной системе, что хранится в каком конкретном блоке диска.
На следующем рисунке показан пример диска с индексацией.
Команда rm
В Linux команда rm используется для безвозвратного удаления файла или папки. В обычных условиях команда rm прекрасно справляется со своей задачей.
Однако удаляет ли команда rm файл безвозвратно?
С точки зрения обычного пользователя, да, файл, удаленный с помощью команды rm, удаляется навсегда.
В отличие от системы Windows или среды рабочего стола Linux, где удаленный файл перемещается в корзину или папку «Корзина» соответственно, файл, удаленный с помощью команды rm, не перемещается ни в какую папку. Оно удалено навсегда.
С технической точки зрения нет, удаленный файл сохраняется на диске до тех пор, пока новый файл или папка не будут сохранены в том же месте, где был сохранен файл.
Итак, что именно происходит, когда мы используем команду rm?
Команда rm удаляет запись указанного файла из индексации. Поскольку файл удален, Linux помечает блок, в котором файл был сохранен, как свободный и делает его доступным для нового файла. При сохранении нового файла на диске Linux использует индексацию для поиска свободных блоков. Если блок помечен как свободный при индексировании, он используется для хранения новых данных независимо от того, что он содержит.
Пока новые данные не будут записаны в блок, помеченный как свободный, он будет содержать старые удаленные данные. Различные программы и методы восстановления данных используют это поведение по умолчанию для извлечения удаленных данных из блоков, помеченных как свободные при индексировании.
Поэтому недостаточно удалить сверхчувствительный файл с помощью команды rm. Чтобы гарантировать, что никакие данные не могут быть восстановлены из удаленного файла, мы должны использовать расширенную утилиту или команду, такую как shred. Команда shred не только удаляет запись удаленного файла из индексации, но и перезаписывает блоки, в которых хранился исходный файл, фиктивными или необработанными данными.
Установка утилиты уничтожения
Утилита shred является частью пакета coreutils. Поскольку пакет coreutils является частью основных пакетов при установке по умолчанию, утилита shred должна быть установлена почти всегда. Тем не менее по какой-либо причине, если эта команда недоступна в системе, вы всегда можете переустановить или обновить пакет coreutils с помощью следующей команды: -
Использование команды уничтожения
Команда shred использует следующий синтаксис: -
Вот несколько важных параметров, которые можно использовать с командой shred.
-f :- Принудительно выполнить операцию удаления и перезаписи.
-v :- Показать ход операции.
-z : добавить последнюю перезапись нулями, чтобы скрыть процесс уничтожения.
-n :- Выполнить операцию перезаписи количество раз, указанное с помощью этой опции.
-u :- Удалить файл/раздел/диск после перезаписи.
Полный список опций с другими подробностями можно найти на страницах руководства с помощью следующей команды
Лабораторная установка для практических примеров команды уничтожения
Чтобы продемонстрировать практические примеры команды shred, я добавил отдельный диск (/dev/sdb) в свою тестовую систему. Этот диск содержит два раздела; /dev/sdb1 и /dev/sdb2.Оба раздела монтируются в директории /securedrive/digilocker и /securedrive/database соответственно. В каталоге /securedrive/digilocker есть текстовый файл с именем кредитная карта.
Удаление файла
В каталоге /securedirve/digilocker у нас есть файл с именем кредитной карты. Чтобы удалить этот файл, мы будем использовать следующую команду.
Удаление раздела
Той же командой мы также можем удалить раздел. Чтобы перезаписать и удалить весь раздел, замените имя файла номером раздела. Например, следующая команда перезаписывает раздел /dev/sdb1 десять раз случайными данными.
При удалении всего раздела убедитесь, что вы указали точный номер раздела. Пропуск последнего числового значения заставит эту команду удалить весь диск, а не один раздел с диска. Например, чтобы удалить один раздел /dev/sdb1 с диска /dev/sdb, используйте /dev/sdb1, а чтобы удалить весь диск, используйте /dev/sdb.
Если вы не уверены в номере раздела, вы можете вывести список всех разделов с помощью команды fdisk.
Поскольку команда shred перезаписывает весь раздел, вы можете получить предупреждение о нехватке места на диске, если запускаете эту команду в среде с графическим интерфейсом.
Перезапись/удаление всего диска
Как и в случае с файлом и разделом, при необходимости мы также можем перезаписать весь диск случайными мусорными данными. Например, следующая команда сначала перезаписывает диск /dev/sdb три раза (первые два раза со случайными данными + последний раз со всеми нулями), переименовывает имя диска, используя нули, и, наконец, удаляет все восстанавливаемые следы диска.
В зависимости от размера диска и количества шагов перезаписи процесс может занять много времени.
Почему система не загружается после удаления раздела/диска командой shred?
Команда shred перезаписывает и удаляет только данные и информацию об индексировании. Он не вносит никаких изменений в таблицу разделов и файлы конфигурации, которые управляют устройствами хранения в системе.
В процессе загрузки Linux использует файл конфигурации /etc/fstab для монтирования устройств хранения. Если информация об удаленном диске или разделе не обновлена в этом файле, Linux попытается смонтировать и их. Поскольку раздел или диск были удалены, Linux не сможет их смонтировать. Ошибка монтирования останавливает процесс загрузки со следующим сообщением об ошибке.
Чтобы решить эту проблему, при перезаписи и удалении всего раздела или диска с помощью команды shred убедитесь, что вы также удалили относительную информацию из файла /etc/fstab.
Совместимость
Справочные страницы команды shred содержат всю необходимую информацию о совместимости.
Как указано в руководстве, команда shred может не работать эффективно на следующих типах файловых систем: -
- Файловые системы с журнальной или журналируемой структурой, например поставляемые с AIX и Solaris (а также JFS, ReiserFS, XFS, Ext3 и т. д.)
- Файловые системы, которые записывают избыточные данные и продолжают работать даже в случае сбоя некоторых операций записи, например файловые системы на основе RAID
- Файловые системы, создающие моментальные снимки, например NFS-сервер Network Appliance
- Файловые системы, которые кэшируют во временных местах, например клиенты NFS версии 3
- Сжатые файловые системы
На этом уроке все. Если вам понравился этот урок, не забудьте поделиться им в своей любимой социальной сети.
Автор: ComputerNetworkingNotes Обновлено 19 апреля 2019 г., 11:37:59 IST
Учебные пособия по ComputerNetworkingNotes Linux Безвозвратное и безопасное удаление файлов в Linux
В операционной системе Linux удаленный файл попадает в корзину. Когда Корзина очищается, файл удаляется из системы. Однако с ростом спроса на программное обеспечение для восстановления файлы, удаленные из корзины, могут быть восстановлены до определенной степени.Это означает, что файл, который был удален из Корзины, никогда не удалялся навсегда, а просто становился невидимым для ваших глаз. Файл все еще находится где-то на вашем жестком диске, занимая ненужное место, и будет полностью удален только тогда, когда новый файл будет создан и сохранен в тех же секторах вашего жесткого диска. Чтобы восстановить драгоценное место на диске и избежать повреждения файлов, важно удалить файл в Linux навсегда.
Вот несколько шагов для окончательного удаления файла в операционной системе Linux.
Способ 1. Удаление корзины
Есть параметр, при выборе которого пользователь может удалить файл в Linux напрямую, не отправляя его в корзину. Включение этой опции различается в разных типах Linux, но процесс, используемый для этой функции, может быть одним из двух, упомянутых ниже:
Если ваш дистрибутив Linux поддерживает файловый менеджер Dolphin, перейдите к настройкам и установите флажок рядом с полем Размер и установите процентное ограничение на наименьшее значение. Это гарантирует, что все файлы, размер которых превышает установленный размер, не будут сохранены в Корзине и будут удалены без возможности восстановления.
- Если в вашей системе Linux используется файловый менеджер Nautilus или Nemo, в настройках файлового менеджера вы получите возможность включить обход корзины при нажатии клавиши Delete. Это не приведет к перемещению удаленных файлов в корзину.
Способ 2. Вы всегда можете уничтожить файлы
Шред, разработанный проектом GNU, представляет собой программу, встроенную в операционную систему Linux, которую можно использовать для безвозвратного удаления файла в Linux. Командная строка для удаления файла документа с именем Test с помощью Shred:
shred -uvz -n 2 Test.doc
Параметр "u" удаляет файл перед перезаписью.
Параметр "v" отображает подробную информацию.
Параметр «z» предотвращает любые шансы на восстановление удаленных данных.
Параметр "-n 2" указывает дополнительные проходы для дополнительной безопасности.
Если в папке с названием «Музыка» есть несколько файлов, и вы хотите удалить их все, используйте эту команду:
шред -uvz -n 2 Музыка/*.*
Имя папки указывается как «Музыка», а Asterix с точкой, за которой следует другой Asterix, указывает на удаление файла в Linux независимо от его имени или расширения.
Способ 3. Используйте очистку.
Центр распространения программного обеспечения Linux позволит вам установить Wipe на ваш дистрибутив Linux. Она похожа на программу Shred и проста в использовании. Командная строка для удаления файла через Wipe:
удалить Music/song1.mp3
Wipe более безопасен, чем Shred, а значит, требует много времени. Он также запрашивает подтверждение от пользователя. Чтобы ускорить процесс, используйте соответствующие флаги, такие как:
f: использование этого флага удалит подтверждение.
c: стереть файл, несмотря на разрешения.
q: ускорьте процесс, обойдя все проверки безопасности.
r: удалить из папки в Linux.
Простая команда Wipe со всеми флагами теперь будет выглядеть так:
wipe -rfcq Music/song1.mp3
Способ 4. Используйте безопасное удаление.
Еще один инструмент, обеспечивающий удаление данных с жесткого диска, — это SRM, входящий в состав пакета безопасного удаления. Это довольно эффективный и быстрый инструмент, который может даже удалить каталог в Linux. Команда для удаления файла:
SRM — это один из инструментов из набора инструментов безопасного удаления, который специализируется на безопасном удалении данных с жесткого диска. Многие считают его лучшим инструментом для этой работы.
Srm Music/song1.mp3
z: ваш файл будет удален и заменен нулями, заменяющими файл для дополнительной безопасности.
v: этот флаг предоставляет подробную информацию о процессе.
r: включит рекурсивный режим для подпапок.
1: номер один. Это сократит время, необходимое для завершения процесса.
Тогда новая команда будет такой:
srm -rlvz Music/Song1.jpg
Способ 5. Установите Bleachbit (графический интерфейс)
Одним из лучших инструментов для поиска и удаления ненужных файлов и даже папок в операционной системе Linux является Bleachbit. Известно, что он освобождает место за счет безопасного стирания данных, которые не использовались в течение длительного времени, и может использоваться вручную для нацеливания на несколько файлов, которые необходимо удалить. Его можно установить через центр программного обеспечения с помощью следующей команды:
sudo apt установить отбеливатель
После установки запустите интерфейс, нажмите «ИЗМЕНИТЬ» и выберите «Настройки». На вкладке «Общие» будет список различных опций. Установите флажок рядом с параметром «Перезаписывать содержимое файлов, чтобы предотвратить восстановление».
Далее, чтобы безвозвратно удалить файл в Linux, нажмите «Файл» и выберите «Уничтожить». Появится окно подсказки, подтверждающее ваше действие. Нажмите «Удалить», и это будет последний из выбранных файлов.
Последнее слово об удалении файла в Linux.
Несмотря на то, что использование операционной системы Linux представляет собой другой опыт, это не сложно. Все, что вы должны знать о функциях и возможностях, встроенных в Linux. Будучи системой с открытым исходным кодом, Linux имеет множество вариантов выполнения одной и той же задачи, и это одни из самых простых способов безвозвратного удаления файла в Linux. Подпишитесь на блоги Systweak и наш канал YouTube, чтобы получать больше технических новостей.
Похожие сообщения
Что вы думаете?
6 ответов
Голосовать за Смешно Любовь Удивлен Злой Грустный
Оставить ответ Отменить ответ
САМЫЕ ПОПУЛЯРНЫЕ
Все названия продуктов, товарные знаки и зарегистрированные товарные знаки являются собственностью соответствующих владельцев. Все названия компаний, продуктов и услуг, используемые на этом веб-сайте, предназначены только для целей идентификации. Использование этих названий, товарных знаков и брендов не означает одобрения. WeTheGeek не подразумевает каких-либо отношений с названиями компаний, продуктов и услуг в любой форме.
WeTheGeek — это независимый веб-сайт, который не был авторизован, спонсирован или иным образом одобрен Apple Inc.
WeTheGeek не связан с корпорацией Microsoft и не заявляет о какой-либо такой подразумеваемой или прямой принадлежности.
Читайте также: