CHFLAGS(1)                 OpenBSD Reference Manual                 CHFLAGS(1)

NAME
     chflags - change file flags

SYNOPSIS
     chflags [-R [-H | -L | -P]] flags file [...]

DESCRIPTION
     The chflags utility modifies the file flags of the listed files as speci-
     fied by the flags operand.  The flags of a file dictate special restric-
     tions beyond those enforced by its mode/permissions.

     The options are as follows:

     -R      Recursively descend through any specified directory arguments.
             Change the flags of the file hierarchies rooted in the files in-
             stead of just the files themselves.

     -H      If the -R option is also 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 also specified, all symbolic links are fol-
             lowed.

     -P      If the -R option is also specified, no symbolic links are fol-
             lowed.

     Flags are a comma separated list of keywords.  The following keywords are
     currently defined:

           arch    set the archived flag
           opaque  set the opaque flag (owner or superuser only)
           nodump  set the nodump flag (owner or superuser only)
           sappnd  set the system append-only flag (superuser only)
           schg    set the system immutable flag (superuser only)
           uappnd  set the user append-only flag (owner or superuser only)
           uchg    set the user immutable flag (owner or superuser only)

     An immutable file may not be changed, moved, or deleted.  An append-only
     file is immutable except that data may be appended to it.

     Putting the letters ``no'' before a flag name causes the flag to be
     turned off.  For example:

           nouchg  the immutable bit should be cleared

     The superuser-settable ``sappnd'' and ``schg'' flags can be set at any
     time, but may only be cleared when the system is running at security lev-
     el 0 or -1 (insecure or permanently insecure mode, respectively).  The
     securelevel is normally set to 0, for example, when running in single-us-
     er mode.

     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 ad-
     dition, these options override each other and the command's actions are
     determined by the last one specified.

     Only the superuser can change the user flags on block and character de-
     vices.

     You can use ls -lo to see the flags of existing files.

     The chflags utility exits 0 on success or >0 if an error occurred.

SEE ALSO
     ls(1), chflags(2), stat(2), fts(3), symlink(7)

HISTORY
     The chflags command first appeared in 4.4BSD.

OpenBSD 3.0                       May 2, 1995                                2
