CHFLAGS(1)

NAME
chflags - change file flags

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

DESCRIPTION
The chflags utility modifies the file flags of the listed files as specified by the flags operand. The flags of a file dictate special restrictions beyond those enforced by its mode/permissions. Only the superuser can change the user flags on block and character devices.

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

The options are as follows:

-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.

-h  Treat symbolic links like other files: modify links instead of following them. The -h and -R options are mutually exclusive.

-L  If the -R option is also specified, all symbolic links are followed.

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

-R  Recurse. Where file is a directory, change the flags of the directory and all the files and directories in the file hierarchy below it.

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

arch
    set the archived flag (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)

The arch flag is for compatibility only, and currently has no effect.

A file with the nodump flag set will by default only be backed up by dump(8) during full backups. The -h option of dump(8) can be used to alter this.

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

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 level 0 or -1 (insecure or permanently insecure mode, respectively). For more information on setting the system security level, see securelevel(7).

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 -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.

EXIT STATUS

SEE ALSO
ls(1), chflags(2), stat(2), fts_open(3), securelevel(7), symlink(7), dump(8)

HISTORY
The chflags command first appeared in 4.4BSD.