chattr — команда, изменяющая атрибуты файлов на файловых системах ext2fs, ext3, ext4 и частично на других файловых системах Linux.
-R | Рекурсивно изменять атрибуты каталогов и их содержимого. Все найденные символические ссылки будут игнорироваться |
-V | Выводит более полную выводимую информацию и версию программы chattr |
-f | Отключить вывод большинства ошибок |
-p проект | Установить номер проекта |
-v версия | Установить номер версии/генерации файла |
chattr изменяет атрибуты файлов на файловой системе в ОС на ядре Linux.
Формат символьного режима: +-=[ASacDdIijsTtu].
Оператор «+» обозначает добавление указанных атрибутов к существующим; «-» обозначает их снятие; «=» обозначает установку только этих атрибутов файлам.
Символы «ASacDdijsu» указывают на новые атрибуты файлов:
Атрибут | Что означает | Условия смены атрибута |
---|---|---|
a | append only. Файл может быть открыт только в режиме дозаписи | Только superuser или процесс с опцией CAP_LINUX_IMMUTABLE |
A | no atime updates. Не обновлять поле atime (время последнего доступа) файла. Уменьшает количество операций записи на устройство | |
c | compressed. Файл записан на диск с использованием сжатия | |
C | no copy-on-write. Отключение режима Copy-on-write для указанного файла. Поддерживается только в файловых системах с CoW (Btrfs и др.) | |
d | no dump. Отключает создание архивной копии файла программой dump | |
D | synchronous directory updates. Включает синхронную запись изменений в данном каталоге. Это эквивалентно опции dirsync при монтировании файловой системы | |
e | extent format. Включает использование extent при выделении места на устройстве | Атрибут не может быть отключен с помощью chattr |
E | Атрибут экспериментальных методов сжатия | Атрибут не может быть установлен или снят с помощью chattr |
h | Атрибут указывает, что файл хранит свои блоки в единицах размера блока файловой системы, а не в единицах секторов, и означает, что его размер больше 2 ТБ (или когда-то был). | Атрибут не может быть установлен или снят с помощью chattr |
i | immutable. Указывает, что файл защищен от изменений: не может быть удален или переименован, никакая ссылка (жесткая) не может быть создана на этот файл, никакие данные не могут быть записаны в файл. | Только superuser или процесс с опцией CAP_LINUX_IMMUTABLE |
I | Указывает что указанный каталог проиндексирован с помощью хеш-дерева | Атрибут не может быть установлен или снят с помощью chattr |
j | data journalling. Все данные файла перед записью будут полностью записаны в журнал ext3/ext4, несмотря на опции монтирования «data=ordered» или «data=writeback». В режиме «data=journal» бессмыслен | Только superuser или процесс с опцией CAP_SYS_RESOURCE |
N | Файл с установленным атрибутом «N» указывает на то, что в файле есть данные, хранящиеся внутри самого inode. | Атрибут не может быть установлен или снят с помощью chattr |
P | project hierarchy. Указывает, что каталог с вложенными файлами является иерархической структурой проекта. | |
s | secure deletion. Атрибут защищенного удаления файла, перед удалением все содержимое файла полностью затирается «00» | |
S | synchronous updates. Атрибут синхронной записи для данного файла, аналогичен опции монтирования «sync» файловой системы | |
t | no tail-merging. Отключает метод tail-merging для файла. | |
T | top of directory hierarchy. Указывает что каталог является головой иерархии каталогов. | |
u | undeletable. Указывает системе, что при удалении файла его содержимое должно быть сохранено с возможностью дальнейшего восстановления | |
X | Атрибут экспериментальных методов сжатия | Атрибут не может быть установлен или снят с помощью chattr |
Z | Атрибут экспериментальных методов сжатия | Атрибут не может быть установлен или снят с помощью chattr |
chattr является частью пакета e2fsprogs, получить его можно с адреса e2fsprogs.sourceforge.net.
chattr(1)
— страница справки man по пользовательским командам GNU/Linux на сайте OpenNet (рус.)chattr(1)
— страница справки man по пользовательским командам GNU/Linux (англ.)chflags(1)
— страница справки man по пользовательским командам OpenBSD (англ.)chflags(1)
— страница справки man по пользовательским командам FreeBSD (англ.)