chattr

CHATTR(1)

NAME
chattr – change file attributes on a Linux second extended file system

SYNOPSIS
chattr [ -RVf ] [ -v version ] [ mode ] files…

DESCRIPTION
chattr changes the file attributes on a Linux second extended file sys-
tem.

The format of a symbolic mode is +-=[ASacDdIijsTtu].

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 `acdijsuADST’ select the  new  attributes  for  the  files:
append only (a), compressed (c), no dump (d), immutable (i), data jour-
nalling (j), secure deletion (s), no tail-merging (t), undeletable (u),
no  atime  updates  (A), synchronous directory updates (D), synchronous
updates (S), and top of directory hierarchy (T).

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.

ATTRIBUTES
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 sys-
tems.

A  file  with the `a’ attribute set can only be open in append mode for
writing.   Only   the   superuser   or   a   process   possessing   the
CAP_LINUX_IMMUTABLE capability can set or clear this attribute.

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.

When  a  directory  with the `D’ attribute set is modified, the changes
are written synchronously on  the  disk;  this  is  equivalent  to  the
`dirsync’ mount option applied to a subset of the files.

A  file with the `d’ attribute set is not candidate for backup when the
dump(8) program is run.

The ‘E’ attribute is used by the experimental  compression  patches  to
indicate that a compressed file has a compression error.  It may not be
set  or  reset  using  chattr(1),  although  it  can  be  displayed  by
lsattr(1).

The  ‘e’ attribute indicates that the file is using extents for mapping
the blocks on disk.  It may  not  be  set  or  reset  using  chattr(1),
although it can be displayed by lsattr(1).

The  ‘I’  attribute is used by the htree code to indicate that a direc-
tory is being indexed using hashed trees.  It may not be set  or  reset
using chattr(1), although it can be displayed by lsattr(1).

The  ‘H’ attribute indicates the file is storing its blocks in units of
the filesystem blocksize instead of in units of sectors, and means that
the file is (or at one time was) larger than 2TB.  It may not be set or
reset using chattr(1), although it can be displayed by lsattr(1).

A file with the `i’ attribute cannot be modified: it cannot be  deleted
or  renamed,  no  link  can  be created to this file and no data can be
written to the file.  Only the superuser or a  process  possessing  the
CAP_LINUX_IMMUTABLE capability can set or clear this attribute.

A  file  with the `j’ attribute has all of its data written to the ext3
journal before being written to the file itself, if the  filesystem  is
mounted  with the “data=ordered” or “data=writeback” options.  When the
filesystem is mounted with the “data=journal” option all file  data  is
already  journalled  and  this attribute has no effect.  Only the supe-
ruser or a process possessing the CAP_SYS_RESOURCE capability  can  set
or clear this attribute.

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.

When  a  file  with  the `S’ attribute set is modified, the changes are
written synchronously on the disk; this is  equivalent  to  the  `sync’
mount option applied to a subset of the files.

A  directory  with  the  ‘T’  attribute will be deemed to be the top of
directory hierarchies for the purposes of  the  Orlov  block  allocator
(which is used in on systems with Linux 2.5.46 or later).

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 or ext3 filesys-
tems do not (yet, except in very experimental  patches)  support  tail-
merging.

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.

The ‘X’ attribute is used by the experimental  compression  patches  to
indicate  that  a  raw  contents  of  a compressed file can be accessed
directly.  It currently may  not  be  set  or  reset  using  chattr(1),
although it can be displayed by lsattr(1).

The  ‘Z’  attribute  is used by the experimental compression patches to
indicate a compressed file is dirty.  It may not be set or reset  using
chattr(1), although it can be displayed by lsattr(1).

AUTHOR
chattr was written by Remy Card <Remy.Card@linux.org>.  It is currently
being maintained by Theodore Ts’o <tytso@alum.mit.edu>.

BUGS AND LIMITATIONS
The `c’, ‘s’,  and `u’ attributes are not honored by the ext2 and  ext3
filesystems  as  implemented  in  the  current  mainline Linux kernels.
These attributes may be implemented in future versions of the ext2  and
ext3 filesystems.

The `j’ option is only useful if the filesystem is mounted as ext3.

The `D’ option is only useful on Linux kernel 2.5.19 and later.

AVAILABILITY
chattr  is  part  of  the  e2fsprogs  package  and  is  available  from
http://e2fsprogs.sourceforge.net.

SEE ALSO
lsattr(1)

E2fsprogs version 1.41.4         January 2009                        CHATTR(1)

One thought on “chattr”

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>