Chattr
chattr — команда, изменяющая атрибуты файлов на файловых системах ext2fs, ext3, ext4 и частично на других файловых системах Linux.
Синтаксис
- chattr [ -RV ] [ -v версия ] [ атрибуты ] файлы…
| -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 (англ.)