CHATTR(1) General Commands Manual CHATTR(1)
NAME
chattr - change file attributes on a Linux file system
SYNOPSIS
chattr [ -RVf ] [ -v version ] [ -p project ] [ mode ] files...
DESCRIPTION
chattr changes the file attributes on a Linux file system.
The format of a symbolic mode is +‐=[aAcCdDeFijmPsStTux].
The operator ’+’ causes the selected attributes to be added to the existing attributes of the files; ’‐’ causes them to be removed; and ’=’ causes them to be the only attributes that the files have.
The letters ’aAcCdDeFijmPsStTux’ select the new attributes for the files: append only (a), no atime updates (A), compressed (c), no copy on write (C), no dump (d), synchronous directory updates (D), extent format (e),
case‐insensitive directory lookups (F), immutable (i), data journaling (j), don’t compress (m), project hierarchy (P), secure deletion (s), synchronous updates (S), no tail‐merging (t), top of directory hierarchy (T),
undeletable (u), and direct access for files (x).
The following attributes are read‐only, and may be listed by lsattr(1) but not modified by chattr: encrypted (E), indexed directory (I), inline data (N), and verity (V).
Not all flags are supported or utilized by all file systems; refer to file system‐specific man pages such as btrfs(5), ext4(5), mkfs.f2fs(8), and xfs(5) for more file system‐specific details.
OPTIONS
-R Recursively change attributes of directories and their contents.
-V Be verbose with chattr’s output and print the program version.
-f Suppress most error messages.
-v version
Set the file’s version/generation number.
-p project
Set the file’s project number.
ATTRIBUTES
a A file with the ’a’ attribute set can only be opened in append mode for writing. Only the superuser or a process possessing the CAP_LINUX_IMMUTABLE capability can set or clear this attribute.
A When a file with the ’A’ attribute set is accessed, its atime record is not modified. This avoids a certain amount of disk I/O for laptop systems.
c A file with the ’c’ attribute set is automatically compressed on the disk by the kernel. A read from this file returns uncompressed data. A write to this file compresses data before storing them on the disk.
Note: please make sure to read the bugs and limitations section at the end of this document. (Note: For btrfs, If the ’c’ flag is set, then the ’C’ flag cannot be set. Also conflicts with btrfs mount option
’nodatasum’)
C A file with the ’C’ attribute set will not be subject to copy‐on‐write updates. This flag is only supported on file systems which perform copy‐on‐write. (Note: For btrfs, the ’C’ flag should be set on new or
empty files. If it is set on a file which already has data blocks, it is undefined when the blocks assigned to the file will be fully stable. If the ’C’ flag is set on a directory, it will have no effect on
the directory, but new files created in that directory will have the No_COW attribute set. If the ’C’ flag is set, then the ’c’ flag cannot be set.)
d A file with the ’d’ attribute set is not a candidate for backup when the dump(8) program is run.
D When a directory with the ’D’ attribute set is modified, the changes are written synchronously to the disk; this is equivalent to the ’dirsync’ mount option applied to a subset of the files.
e The ’e’ attribute indicates that the file is using extents for mapping the blocks on disk. It may not be removed using chattr(1).
E A file, directory, or symlink with the ’E’ attribute set is encrypted by the file system.