OpenBSD manual page server

Manual Page Search Parameters

CHFLAGS(1) General Commands Manual CHFLAGS(1)

chflagschange 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 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:

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

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.

The chflags utility exits 0 on success, and >0 if an error occurs.

ls(1), chflags(2), stat(2), fts(3), securelevel(7), symlink(7), dump(8)

The chflags command first appeared in 4.4BSD.

January 28, 2014 OpenBSD-5.5