chattr and lsattr

chattr

chattr [options] mode files

Modify file attributes. Specific to Linux Second and Third Extended Filesystem (ext2 and ext3). Behaves similarly to symbolic chmod, using +, -, and =. mode is in the form opcode attribute. See also lsattr.

Options

-R

Modify directories and their contents recursively.

-V

Print modes of attributes after changing them.

-v version

Set the file’s version.

Opcodes

+

Add attribute.

-

Remove attribute.

=

Assign attributes (removing unspecified attributes).

Attributes

A

Don’t update access time on modify.

a

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

c

Compressed.

d

No dump.

i

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

j

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.

S

Synchronous updates.

s

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

u

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

Example

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:

—–a——-

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>

Comments are closed.