Chattr

 is the command in Linux that allows a user to set certain attributes of a file. is the command that displays the attributes of a file.
Most BSD-like systems, including macOS, have always had an analogous command to set the attributes, but no command specifically meant to display them; specific options to the command are used instead. The chflags command first appeared in 4.4BSD.
Solaris has no commands specifically meant to manipulate them. and are used instead.
Other Unixes, in general, have no analogous commands. The similar-sounding commands (from HP-UX) and (from AIX) exist but have unrelated functions.
Among other things, the command is useful to make files immutable so that password files and certain system files cannot be erased during software upgrades.
In Linux systems ( and ).
File system support.
The command line tools (to manipulate attributes) and (to list attributes) were originally specific to the Second Extended Filesystem family (ext2, ext3, ext4), and are available as part of the e2fsprogs package.
However, the functionality has since been extended, fully or partially, to many other systems, including XFS, ReiserFS, JFS and OCFS2. The btrfs file system includes the attribute functionality, including the codice_1 flag, which turns off the built-in copy-on-write (CoW) feature of btrfs due to slower performance associated with CoW.
description.
The form of the command is:
 chattr [-RVf] [-+=AacDdijsTtSu] [-v version] files...
description.
The form of the command (gnu 1.41.3):
 lsattr [ -RVadv ] [ files... ]
Attributes.
Some attributes include:
In BSD-like systems ().
File system support.
The command is not specific to particular file systems. UFS on BSD systems, and APFS, HFS+, SMB, AFP, and FAT on macOS support least some flags.
description.
The form of the command is:
 chflags [-R [-H | -L | -P]] flags file ...
Displaying.
BSD-like systems, in general, have no default user-level command specifically meant to display the flags of a file. The command will do with either the codice_13, or the codice_14, depending on the system, flags passed.
Attributes.
All traditional attributes can be set or cleared by the super-user; some can also be set or cleared by the owner of the file.
Some attributes include:
BSD systems offer additional flags like offline, snapshot, sparse, and uarchive; see References.