Поиск по сайту:

Защитите файлы от случайного удаления в Linux

Rm-protection — безопасная альтернатива команде «rm».

В этом кратком руководстве я объясню, что такое rm-protection, как его установить в Linux и как использовать rm-protection для защиты файлов от случайного удаления в Linux.

Введение

Некоторое время назад мы опубликовали статью, в которой описывалось, как использовать команду chattr для предотвращения случайного удаления файлов и папок в Linux и Unix-подобных операционных системах. Сегодня мы сделаем то же самое с другой программой под названием rm-protection.

В отличие от чата, утилита rm-protection попросит вас ответить на вопрос, чтобы удалить защищенные файлы. Если вы не смогли дать правильный ответ на вопрос, то удалить файлы вы не сможете. Это безопасная альтернатива команде «rm» с минимальной разницей.

Установите rm-защиту в Linux

Официальный способ установки rm-protection — использовать pip, менеджер пакетов Python.

Чтобы установить PIP в Arch Linux и его производных, запустите:

sudo pacman -S python-pip

В RHEL, Fedora, CentOS:

sudo yum install epel-release
sudo yum install python-pip

Или,

sudo dnf install epel-release
sudo dnf install python-pip

В Debian, Ubuntu, Linux Mint:

sudo apt-get install python-pip

После установки PIP выполните следующую команду, чтобы установить 'rm-protection'.

sudo pip install rm-protection

Защитите файлы от случайного удаления в Linux с помощью rm-protection

Утилита rm-protection работает точно так же, как команда «rm». Единственная разница в том, что вам будет предложено ответить на вопрос. Он состоит из двух утилит, а именно rm-p и protect. Здесь «rm-p» удалит файлы, а утилита «protect» защитит ваши файлы от случайного или преднамеренного удаления. Позвольте мне объяснить на некоторых примерах.

Во-первых, для удобства создайте псевдоним для утилит «rm-p» и «protect». Это необязательно. Если вы не хотите создавать псевдоним, вам нужно вводить «rm-p» каждый раз, когда вы хотите удалить файл.

alias rm="rm-p"
alias protect=protect

Допустим, у нас есть важный файл под названием ostechnix.txt.

Чтобы защитить этот файл, запустите:

protect ostechnix.txt

Вам будет задан вопрос и ответ на него, чтобы защитить вышеуказанный файл.

Question for /home/sk/ostechnix.txt: Do you love Linux?
Answer: Yes I do

Защитите файлы от случайного удаления с помощью rm-protection

Теперь вышеуказанный файл защищен. Вопросы и ответы для этого файла сохраняются в файле .ostechnix.txt.rm-protection в текущем каталоге. Вам понадобится ответ, когда вы захотите удалить файл.

Теперь попробуем удалить этот файл.

rm ostechnix.txt

Вам будет предложено ввести ответ на вопрос. Если вы не ответили, rm-защита откажется удалять файл.

rm-p: /home/sk/ostechnix.txt: Do you love Linux?
Answer: No
rm-p: Wrong answer! /home/sk/ostechnix.txt will not be removed
rm-p: The answer is stored in /home/sk/.ostechnix.txt.rm-protection
rm: missing operand
Try 'rm --help' for more information.

Защитите файлы от случайного удаления с помощью rm-protection

Если вы дадите правильный ответ, файл будет удален.

rm-p: /home/sk/ostechnix.txt: Do you love Linux?
Answer: Yes I do

Защитите файлы от случайного удаления с помощью утилиты rm-protection

Это очень просто.

Кроме того, вы можете защитить все файлы внутри папки, используя флаг -R.

Скажем, например, мы можем защитить все файлы внутри каталога с именем test, как показано ниже.

protect -R test/

Пример вывода:

Question for /home/sk/test: Do you love Linux?
Answer: yes

Теперь вы не сможете удалить файлы или родительскую папку, не дав правильного ответа.

Ограничения и проблемы

Каждое приложение имеет некоторые ограничения и недостатки.

rm-protection – это чувствительная к регистру утилита. Поэтому при ответе следует использовать правильный регистр (прописные или строчные). Скажем, например, если ваш ответ «Да, я согласен» и вы вводите «Да, я делаю», rm-protection не удалит файл. Вам необходимо ввести правильный ответ в правильном регистре, точно так же, как «Да, я делаю», как вы вводите при первой защите файла. Если в вашем ответе есть запятая, ее тоже необходимо поставить.

Посмотрите на следующий пример.

rm ostechnix.txt
rm-p: /home/sk/ostechnix.txt: Do you love Linux?
Answer: yes i do
rm-p: Wrong answer! /home/sk/ostechnix.txt will not be removed
rm-p: The answer is stored in /home/sk/.ostechnix.txt.rm-protection
rm: missing operand
Try 'rm --help' for more information.

Как вы заметили в приведенном выше примере, хотя я дал правильный ответ, rm-protection отказалась удалить файл. Это из-за строчных букв в ответе.

Также необходимо быть очень осторожным при использовании утилиты для защиты файлов. Помните, что rm-protection не является программой безопасности. Если кто-то знает ответ или имеет доступ к файлу (.ostechnix.txt.rm-protection), он/она узнает ответ и легко удалит файл.

Пользователи по-прежнему могут удалять файлы из графического интерфейса

Как заметил один из наших читателей в разделе комментариев, утилита rm-protection не мешает пользователю удалять файлы с помощью графического интерфейса. Так что не путайте эту утилиту с безопасностью. Он не защитит ваши файлы, а защитит их от случайного удаления.

Еще одним ограничением утилиты rm-protection является то, что она защищает только файлы/папки обычного пользователя. Пользователь root по-прежнему может удалять защищенные файлы. Если кто-то знает пароль root, ваши файлы будут удалены, даже если они защищены паролем.

Ресурс:

  • Страница rm-protection на GitHub

Статьи по данной тематике