В Linux кроме прав доступа есть еще и атрибуты файла, подобно атрибутам файла в других ОС.
Просмотреть установленные атрибуты можно командой:
Основные полезные атрибуты:
Пример установки атрибута:
Пример сброса атрибута:
Просмотреть установленные атрибуты можно командой:
chattr some_file
Основные полезные атрибуты:
i
Запрет на изменений, переименование и удаление файла. Обычно ставится для критических конфиг. файлов. Установить и сбросить может только root (либо процесс с CAP_LINUX_IMMUTABLE)u
При удалении файла с установленным атрибутом u его содержимое хранится на жестком диске, что позволяет легко восстановить файл.c
Файл будет сжиматься. Рекомендуется для больших несжатых данных, но крайне не желателен для файлов БД т.к. доступ будет медленнее. S
Данные, записываемые в файл, сразу будут сброшены на диск. Аналогично выполнению команды sync сразу после каждой операции записи в файл.s
Прямо противоположен атрибуту u. После удаления файла, принадлежащие ему блоки будут обнулены и восстановить их уже не получится.Пример установки атрибута:
chattr +i config_file
Пример сброса атрибута:
chattr -i config_file