CHFLAGS(1) BSD General Commands Manual CHFLAGS(1)
chflags -- change file flags
chflags [-R [-H | -L | -P]] flags file ...
The chflags utility modifies the file flags of the listed files as specified by the flags operand.
The options are as follows:
-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.
The flags are specified as an octal number or a comma separated list of keywords. The following keywords are currently defined:
arch set the archived flag (super-user only)
opaque set the opaque flag (owner or super-user only)
nodump set the nodump flag (owner or super-user only)
sappnd set the system append-only flag (super-user only)
schg set the system immutable flag (super-user only)
sunlnk set the system undeletable flag (super-user only)
uappnd set the user append-only flag (owner or super-user only)
uchg set the user immutable flag (owner or super-user only)
uunlnk set the user undeletable flag (owner or super-user only)
archived, sappend, schange, simmutable, uappend, uchange, uimmutable, sunlink, uunlink
aliases for the above
Putting the letters ``no'' before an option causes the flag to be turned off. For example:
nouchg the immutable bit should be cleared
Symbolic links do not have flags, so unless the -H or -L option is set, chflags on a symbolic link always succeeds and has no effect. The
-H, -L and -P options are ignored unless the -R option is specified. In addition, these options override each other and the command's
actions are determined by the last one specified.
You can use "ls -lo" to see the flags of existing files.
The chflags utility exits 0 on success, and >0 if an error occurs.
ls(1), chflags(2), stat(2), fts(3), symlink(7)
The chflags command first appeared in 4.4BSD.
May 2, 1995 BSD