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

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

Рубрики:

Linux, Утилиты Linux

Метки:

, ,

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

В данной статье мы рассмотрим, как защитить один или несколько файлов от удаления в Linux с помощью утилиты chattr.

Содержание:

  1. Что такое атрибуты файла
  2. Команда chattr в Linux
  3. Как сделать файл неудаляемым в Linux
  4. Как сделать все файлы каталога неудаляемыми в Linux
  5. Команда lsattr в Linux
  6. Как убрать атрибут файла с помощью chattr
  7. Выводы

Что такое атрибуты файла

Атрибуты файлов в Linux — это метаданные, которые связаны с файлом и описывают его свойства. Они используются для определения прав доступа к файлу, времени создания, изменения, а также для указания, является ли файл обычным файлом, каталогом, символической ссылкой и т. д. Атрибуты файлов могут быть изменены с помощью команд chmod и chown или утилиты chattr.

Команда chattr в Linux

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

  • a — позволяет добавлять данные только в конец файла;
  • i — устанавливает файл как «неизменяемый», что защищает его от любых изменений, в том числе и удаления;
  • c — настраивает сжатие при записи и декомпрессию при чтении файла в автоматическом режиме;
  • u — позволяет файлу восстанавливаться из резервной копии (бэкапа) при удалении или перезаписи;
  • h — скрывает файл и его содержимое от пользователя;
  • p — устанавливает файл в режим offline, что делает файл доступным для ОС только в определенных условиях (например, при подключении определенного устройства).

В этой статье мы будем использовать атрибут i.

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

Для начала создадим файл file.txt и запишем в него случайную информацию.

 

file

 

Теперь с помощью команды chattr установим для файла установим атрибут i. Для этого введем в терминале следующую команду:

 

Важно: для выполнения команды chattr нужны привилегии суперпользователя (root), которые можно предоставить в том числе с помощью команды sudo.

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

 

chattr

Теперь при попытке удаления файла даже с правами суперпользователя система будет выдавать ошибку:

 

delete
Читайте также: Управление пользователями и группами, разрешениями, атрибутами файлов и включение доступа sudo к учетным записям — LFCS часть 8.

 

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

Команда chattr позволяет пользователям изменять атрибуты сразу нескольких файлов. Например, Вы можете задать атрибут i одновременно для всех файлов каталога. Для выполнения этой задачи нужно использовать в команде опцию -R. С ее помощью утилита chattr рекурсивно изменит атрибуты каталога и его содержимого.

Команда lsattr в Linux

Прежде чем изменить метаданные файла, нужно узнать какие атрибуты для него установлены. Для просмотра атрибутов файла в системе Linux существует команда lsattr. Вам достаточно написать ее в терминале и указать путь к файлу в качестве аргумента:

 

lsattr

Как убрать атрибут файла с помощью chattr

Чтобы удалить значение атрибута файла, нужно немного изменить команду его установки. Знак + (плюс) заменить символом - (минус). К примеру:

 

chattr -i

На скриншоте видно, что атрибут i был успешно удален. Теперь можно без всяких проблем удалить файл file.txt:

 

rm-file

Если Вы хотите детальнее изучить команду chattr, рекомендуем просмотреть ее man-страницу:

Выводы

В статье были рассмотрены различные аспекты работы с командой chattr. В частности, мы показали установку и удаление атрибута i, который делает файл неизменяемым и неудаляемым. Его применение может быть полезен для обеспечения безопасности.

Спасибо за время, уделенное прочтению статьи!

Если возникли вопросы — задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасностиполный курс по кибербезопасностикурсы DevNet / DevOps (программируемые системы) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Рубрики:

Linux, Утилиты Linux

Метки:

, ,

Больше похожих постов

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения


Поиск по сайту
Лучшее
Популярное
Рубрики
Меню