mirror of
https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
synced 2024-11-30 13:33:33 +08:00
chattr.1: improve attribute formatting with labels and indented paragraphs
By convention, lists of options in man pages use a label followed by an indented description, such as this example from the Options section: -R Recursively change attributes of directories and their contents. But the Attributes section places the available attributes mid-sentence, which makes it visually more difficult to parse: A file with the 'a' attribute set can only be opened in append mode for writing. [...] When a file with the 'A' attribute set is accessed, its atime record is not modified. [...] This patch places a label beside each attribute description, which (in my opinion) improves readability, especially when visually skimming the list. For example: a A file with the 'a' attribute set can only be opened in append mode for writing. A When a file with the 'A' attribute set is accessed, its atime record is not modified. Signed-off-by: Jeremy Visser <jeremyvisser@google.com> Reviewed-by: Andreas Dilger <adilger@dilger.ca> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
This commit is contained in:
parent
750bae1542
commit
a5676f8da7
@ -79,20 +79,25 @@ Set the file's version/generation number.
|
||||
.BI \-p " project"
|
||||
Set the file's project number.
|
||||
.SH ATTRIBUTES
|
||||
.TP
|
||||
.B 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.
|
||||
.PP
|
||||
.TP
|
||||
.B 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.
|
||||
.PP
|
||||
.TP
|
||||
.B 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.
|
||||
.PP
|
||||
.TP
|
||||
.B 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
|
||||
@ -101,42 +106,50 @@ 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.)
|
||||
.PP
|
||||
.TP
|
||||
.B d
|
||||
A file with the 'd' attribute set is not a candidate for backup when the
|
||||
.BR dump (8)
|
||||
program is run.
|
||||
.PP
|
||||
.TP
|
||||
.B 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.
|
||||
.PP
|
||||
.TP
|
||||
.B e
|
||||
The 'e' attribute indicates that the file is using extents for mapping
|
||||
the blocks on disk. It may not be removed using
|
||||
.BR chattr (1).
|
||||
.PP
|
||||
.TP
|
||||
.B E
|
||||
A file, directory, or symlink with the 'E' attribute set is encrypted by the
|
||||
filesystem. This attribute may not be set or cleared using
|
||||
.BR chattr (1),
|
||||
although it can be displayed by
|
||||
.BR lsattr (1).
|
||||
.PP
|
||||
.TP
|
||||
.B F
|
||||
A directory with the 'F' attribute set indicates that all the path
|
||||
lookups inside that directory are made in a case-insensitive fashion.
|
||||
This attribute can only be changed in empty directories on file systems
|
||||
with the casefold feature enabled.
|
||||
.PP
|
||||
.TP
|
||||
.B i
|
||||
A file with the 'i' attribute cannot be modified: it cannot be deleted or
|
||||
renamed, no link can be created to this file, most of the file's
|
||||
metadata can not be modified, and the file can not be opened in write mode.
|
||||
Only the superuser or a process possessing the CAP_LINUX_IMMUTABLE
|
||||
capability can set or clear this attribute.
|
||||
.PP
|
||||
.TP
|
||||
.B I
|
||||
The 'I' attribute is used by the htree code to indicate that a directory
|
||||
is being indexed using hashed trees. It may not be set or cleared using
|
||||
.BR chattr (1),
|
||||
although it can be displayed by
|
||||
.BR lsattr (1).
|
||||
.PP
|
||||
.TP
|
||||
.B j
|
||||
A file with the 'j' attribute has all of its data written to the ext3 or
|
||||
ext4 journal before being written to the file itself, if the file system
|
||||
is mounted with the "data=ordered" or "data=writeback" options and the
|
||||
@ -144,14 +157,16 @@ file system has a journal. When the filesystem is mounted with the
|
||||
"data=journal" option all file data is already journalled and this
|
||||
attribute has no effect. Only the superuser or a process possessing the
|
||||
CAP_SYS_RESOURCE capability can set or clear this attribute.
|
||||
.PP
|
||||
.TP
|
||||
.B N
|
||||
A file with the 'N' attribute set indicates that the file has data
|
||||
stored inline, within the inode itself. It may not be set or cleared
|
||||
using
|
||||
.BR chattr (1),
|
||||
although it can be displayed by
|
||||
.BR lsattr (1).
|
||||
.PP
|
||||
.TP
|
||||
.B P
|
||||
A directory with the 'P' attribute set will enforce a hierarchical
|
||||
structure for project id's. This means that files and directory created
|
||||
in the directory will inherit the project id of the directory, rename
|
||||
@ -159,22 +174,26 @@ operations are constrained so when a file or directory is moved into
|
||||
another directory, that the project id's much match. In addition, a
|
||||
hard link to file can only be created when the project id for the file
|
||||
and the destination directory match.
|
||||
.PP
|
||||
.TP
|
||||
.B s
|
||||
When a file with the 's' attribute set is deleted, its blocks are zeroed
|
||||
and written back to the disk. Note: please make sure to read the bugs
|
||||
and limitations section at the end of this document.
|
||||
.PP
|
||||
.TP
|
||||
.B S
|
||||
When a file with the 'S' attribute set is modified,
|
||||
the changes are written synchronously to the disk; this is equivalent to
|
||||
the 'sync' mount option applied to a subset of the files.
|
||||
.PP
|
||||
.TP
|
||||
.B t
|
||||
A file with the 't' attribute will not have a partial block fragment at
|
||||
the end of the file merged with other files (for those filesystems which
|
||||
support tail-merging). This is necessary for applications such as LILO
|
||||
which read the filesystem directly, and which don't understand tail-merged
|
||||
files. Note: As of this writing, the ext2, ext3, and ext4 filesystems do
|
||||
not support tail-merging.
|
||||
.PP
|
||||
.TP
|
||||
.B T
|
||||
A directory with the 'T' attribute will be deemed to be the top of
|
||||
directory hierarchies for the purposes of the Orlov block allocator.
|
||||
This is a hint to the block allocator used by ext3 and ext4 that the
|
||||
@ -184,12 +203,14 @@ idea to set the 'T' attribute on the /home directory, so that /home/john
|
||||
and /home/mary are placed into separate block groups. For directories
|
||||
where this attribute is not set, the Orlov block allocator will try to
|
||||
group subdirectories closer together where possible.
|
||||
.PP
|
||||
.TP
|
||||
.B u
|
||||
When a file with the 'u' attribute set is deleted, its contents are
|
||||
saved. This allows the user to ask for its undeletion. Note: please
|
||||
make sure to read the bugs and limitations section at the end of this
|
||||
document.
|
||||
.PP
|
||||
.TP
|
||||
.B V
|
||||
A file with the 'V' attribute set has fs-verity enabled. It cannot be
|
||||
written to, and the filesystem will automatically verify all data read
|
||||
from it against a cryptographic hash that covers the entire file's
|
||||
|
Loading…
Reference in New Issue
Block a user