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

Как сделать файлы и каталоги неудаляемыми даже с помощью root в Linux


В Unix-подобных операционных системах, включая Linux, root — это учетная запись или имя пользователя, которое по умолчанию может изменять все каталоги и файлы в системе. В этой статье мы покажем, как сделать каталоги или файлы недоступными для удаления даже пользователем root в Linux.

Чтобы сделать файл недоступным для удаления любым пользователем системы, включая root, вам необходимо сделать его немодифицируемым с помощью командыchattr. Эта команда изменяет атрибуты файлов в файловой системе Linux.

Как сделать файл неудаляемым в Linux

Команда ниже делает файл /backups/passwd неизменяемым (или не подлежащим удалению). Это означает, что файл нельзя каким-либо образом изменить: его нельзя удалить или переименовать. На него даже ссылку создать нельзя и в файл тоже нельзя записать никакие данные.

Обратите внимание, что вам нужны права суперпользователя, чтобы установить или удалить этот атрибут с помощью команды sudo:

sudo chattr +i /backups/passwd
OR
sudo chattr +i -V /backups/passwd

Чтобы просмотреть атрибуты файла, используйте команду lsattr, как показано.

lsattr /backups/passwd 

Теперь попробуйте удалить неизменяемый файл как под обычным пользователем, так и под пользователем root.

rm /backups/passwd
sudo rm /backups/passwd

Как рекурсивно сделать каталог неудаляемым в Linux

Используя флаг -R, вы можете рекурсивно изменять атрибуты каталогов и их содержимое следующим образом.

sudo chattr +i -RV /backups/  

Чтобы снова сделать файл изменяемым, используйте знак -i для удаления вышеуказанного атрибута следующим образом.

sudo chattr -i /backups/ passwd

Для получения дополнительной информации прочитайте эту статью: 5 команд «chattr», чтобы сделать важные файлы НЕИЗМЕНИМЫМИ (неизменяемыми) в Linux.

Вы найдете эти соответствующие статьи полезными:

  1. Как управлять пользователями и группами в Linux
  2. Управление пользователями и группами и включение доступа sudo для пользователей
  3. Как найти файлы с разрешениями SUID и SGID в Linux
  4. Перевести разрешения rwx в восьмеричный формат в Linux

Вот и все! В этой статье мы показали, как сделать файлы недоступными для удаления даже пользователем root в Linux. Любые вопросы вы можете задать через форму обратной связи ниже.