chattr and lsattr

Published by

Posted on April 09, 2008


chattr [options] mode files

Modify file attributes. Specific to Linux Second and Third Extended Filesystem (ext2 and ext3). You’ll find additional information about book of ra 7. Behaves similarly to symbolic chmod, using +, , and =. mode is in the form opcode attribute. See also lsattr.



Modify directories and their contents recursively.


Print modes of attributes after changing them.

-v version

Set the file’s version.



Add attribute.

Remove attribute.


Assign attributes (removing unspecified attributes).



Don’t update access time on modify.


Append only for writing. Can be set or cleared only by a privileged user.




No dump.


Immutable. Can be set or cleared only by a privileged user.


Journalled file. This is useful only in cases where you are using an ext3 filesystem mounted with the data=”ordered” or data=”writeback” attributes. The data=”journalled” option for the filesystem causes this operation to be performed for all files in the system and makes this option irrelevant.


Synchronous updates.


Secure deletion. The contents are zeroed on deletion, and the file cannot be undeleted or recovered in any way.


Undeletable. This causes a file to be saved even after it has been deleted, so that a user can undelete it later.


chattr +a myfile As superuser

sattr <filename>

if the result is:


Then you have no attributes assigned to this file, and the problem is likely somethng else, if, instead you have one or more letters, such as:


Then you have some form of restrictive attribute, that is likely preventing you from modifying the file as you would like to. To get a discription of the specific attributes that are assigned to a file, I would suggest ‘man chattr’, which will discribe the attributes and give you the format to modify them with the ‘chattr’ command, such as to remove the ‘append-only’ attribute in my previous sample, the command would be:

chattr -a <filename>