1.\" $NetBSD: chflags.1,v 1.32 2023/05/31 20:33:22 uwe Exp $ 2.\" 3.\" Copyright (c) 1989, 1990, 1993, 1994 4.\" The Regents of the University of California. All rights reserved. 5.\" 6.\" This code is derived from software contributed to Berkeley by 7.\" the Institute of Electrical and Electronics Engineers, Inc. 8.\" 9.\" Redistribution and use in source and binary forms, with or without 10.\" modification, are permitted provided that the following conditions 11.\" are met: 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in the 16.\" documentation and/or other materials provided with the distribution. 17.\" 3. Neither the name of the University nor the names of its contributors 18.\" may be used to endorse or promote products derived from this software 19.\" without specific prior written permission. 20.\" 21.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 22.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 23.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 24.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 25.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 26.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31.\" SUCH DAMAGE. 32.\" 33.\" @(#)chflags.1 8.4 (Berkeley) 5/2/95 34.\" 35.Dd May 25, 2023 36.Dt CHFLAGS 1 37.Os 38.Sh NAME 39.Nm chflags 40.Nd change file flags 41.Sh SYNOPSIS 42.Nm 43.Oo 44.Fl R 45.Op Fl H | Fl L | Fl P 46.Oc 47.Op Fl d 48.Op Fl h 49.Ar flags 50.Ar 51.Sh DESCRIPTION 52The 53.Nm 54utility modifies the file flags of the listed files 55as specified by the 56.Ar flags 57operand. 58.Pp 59The options are as follows: 60.Bl -tag -width Fl 61.It Fl d 62If the change requested would not alter the 63flags currently set for 64.Ar file 65then attempt no change operation. 66.It Fl H 67If the 68.Fl R 69option is specified, symbolic links on the command line are followed. 70Symbolic links encountered in the tree traversal are not followed. 71.It Fl h 72If the 73.Ar file 74or a file encountered during directory traversal is a symbolic link, 75the file flags of the link itself are changed. 76.It Fl L 77If the 78.Fl R 79option is specified, all symbolic links are followed. 80.It Fl P 81If the 82.Fl R 83option is specified, no symbolic links are followed. 84.It Fl R 85Change the file flags for the file hierarchies rooted 86in the 87.Ar file\^ Ns s 88instead of just the 89.Ar file\^ Ns s 90themselves. 91.El 92.Pp 93Flags are a comma separated list of keywords. 94The following keywords are currently defined: 95.\" XXX: list the actual chflags(2) macro names 96.Bl -column -offset indent ".Sy Keyword" "system append-only" 97.It Sy Keyword Ta Sy Flag Ta Sy Permission 98.It Li arch Ta archived Ta super-user only 99.It Li opaque Ta opaque Ta owner or super-user 100.It Li nodump Ta nodump Ta owner or super-user 101.It Li sappnd Ta system append-only Ta super-user only 102.It Li schg Ta system immutable Ta super-user only 103.It Li uappnd Ta user append-only Ta owner or super-user 104.It Li uchg Ta user immutable Ta owner or super-user 105.El 106.Pp 107Putting the letters 108.Sq Cm no 109before a keyword causes the flag to be turned off. 110For example, 111.Li nouchg 112requests the immutable bit should be cleared. 113.Pp 114The 115.Fl H , 116.Fl L 117and 118.Fl P 119options are ignored unless the 120.Fl R 121option is specified. 122In addition, these options override each other and the 123command's actions are determined by the last one specified. 124The default is as if the 125.Fl P 126option had been specified. 127.Pp 128The 129.Fl o 130option 131of 132.Xr ls 1 133is used to display the flags. 134.Pp 135The kernel does not allow the flags on block and character 136devices to be changed except by the super-user. 137.Pp 138Note that the ability to clear certain flags is 139dependent on the current kernel 140.Va securelevel . 141See 142.Xr secmodel_securelevel 9 143for details. 144.Sh EXIT STATUS 145.Ex -std 146.Sh SEE ALSO 147.Xr ls 1 , 148.Xr chflags 2 , 149.Xr lchflags 2 , 150.Xr stat 2 , 151.Xr fts 3 , 152.Xr stat_flags 3 , 153.Xr symlink 7 , 154.Xr dump 8 , 155.Xr init 8 , 156.Xr secmodel_securelevel 9 157