chattr

From Wikipedia, the free encyclopedia
Jump to: navigation, search

chattr is a command in the Linux operating system that allows a user to set certain attributes on a file residing on an ext2-based filesystem. chflags is the analogous command on modern BSD systems, including Mac OS X. The commands are similar to the attrib command on DOS, OS/2 and Microsoft Windows. Other Unix systems have no analogous commands; Solaris supports extended file attributes, but there are no user level commands for setting or changing them, and the chatr command in HP-UX, and chattr in AIX have unrelated functions.

chattr and lsattr utilities on Linux and the attributes they manipulate are specific to the Second Extended Filesystem family (ext2, ext3), and are available as part of the e2fsprogs package. They don't work on files residing on other filesystems, e.g. ReiserFS, FAT.

Among other things, the command can be used to make files immutable so that password files and certain system files cannot be erased during software upgrades.[1]

Contents

[edit] Description

The form of the chattr command is:

chattr [-RVf] [-+=AacDdijsSu] [-v version] files...
  • -R is to recurse all subdirectories
  • +i is to set the immutable bit to prevent even root from erasing or changing the contents of a file.
  • -i is to unset the immutable bit

The form of the chflags (OSX) command is:

 chflags [[-R [-H | -L | -P]] flags file ...
  • -H If the -R option is specified, symbolic links on the command line are followed. (Symbolic links encountered in the tree traversal are not followed.)
  • -L If the -R option is specified, all symbolic links are followed.
  • -P If the -R option is specified, no symbolic links are followed. This is the default.
  • -R Change the file flags for the file hierarchies rooted in the files instead of just the files themselves.

[edit] Attributes (chattr)

Some attributes include:

  • don't update atime (A)
  • synchronous updates (S)
  • synchronous directory updates (D)
  • append only (a)
  • secure deletion (s)
  • top of directory hierarchy (T)
  • no tail-merging (t)
  • undeletable (u)

[edit] Attributes (chflags, OSX)

Some attributes include:

  • set the archived flag (super-user only) - arch, archived
  • set the opaque flag (owner or super-user only). [Directory is opaque when viewed through a union mount] - opaque
  • set the nodump flag (owner or super-user only) - nodump
  • set the system append-only flag (super-user only) - sappnd, sappend
  • set the system immutable flag (super-user only) - schg, schange, simmutable
  • set the user append-only flag (owner or super-user only) - uappnd, uappend
  • set the user immutable flag (owner or super-user only) - uchg, uchange, uimmutable
  • set the hidden flag [Hide item from GUI] - hidden

[edit] See also

  • lsattr – view file attributes
  • chown – change file/directory ownership
  • chmod – change file access control attributes
  • cacls – Microsoft Windows NT file system ACL control utility

[edit] Notes

  1. ^ chflags(1) – OpenBSD General Commands Manual

[edit] References

Personal tools
Namespaces

Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages