CHFLAGS(1) - General Commands Manual

CHFLAGS(1) - General Commands Manual #

CHFLAGS(1) - General Commands Manual

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 #

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

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.

OpenBSD 7.5 - September 2, 2019