1.\"- 2.\" Copyright (c) 1989, 1990, 1993, 1994 3.\" The Regents of the University of California. All rights reserved. 4.\" 5.\" This code is derived from software contributed to Berkeley by 6.\" the Institute of Electrical and Electronics Engineers, Inc. 7.\" 8.\" Redistribution and use in source and binary forms, with or without 9.\" modification, are permitted provided that the following conditions 10.\" are met: 11.\" 1. Redistributions of source code must retain the above copyright 12.\" notice, this list of conditions and the following disclaimer. 13.\" 2. Redistributions in binary form must reproduce the above copyright 14.\" notice, this list of conditions and the following disclaimer in the 15.\" documentation and/or other materials provided with the distribution. 16.\" 4. Neither the name of the University nor the names of its contributors 17.\" may be used to endorse or promote products derived from this software 18.\" without specific prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30.\" SUCH DAMAGE. 31.\" 32.\" @(#)chflags.1 8.4 (Berkeley) 5/2/95 33.\" $FreeBSD$ 34.\" 35.Dd March 3, 2006 36.Dt CHFLAGS 1 37.Os 38.Sh NAME 39.Nm chflags 40.Nd change file flags 41.Sh SYNOPSIS 42.Nm 43.Op Fl fhv 44.Oo 45.Fl R 46.Op Fl H | Fl L | Fl P 47.Oc 48.Ar flags 49.Ar 50.Sh DESCRIPTION 51The 52.Nm 53utility modifies the file flags of the listed files 54as specified by the 55.Ar flags 56operand. 57.Pp 58The options are as follows: 59.Bl -tag -width indent 60.It Fl f 61Do not display a diagnostic message if 62.Nm 63could not modify the flags for 64.Va file , 65nor modify the exit status to reflect such failures. 66.It Fl H 67If the 68.Fl R 69option is specified, symbolic links on the command line are followed. 70(Symbolic links encountered in the tree traversal are not followed.) 71.It Fl h 72If the 73.Ar file 74is a symbolic link, 75change the file flags of the link itself rather than the file to which it points. 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. 84This is the default. 85.It Fl R 86Change the file flags for the file hierarchies rooted 87in the files instead of just the files themselves. 88.It Fl v 89Cause 90.Nm 91to be verbose, showing filenames as the flags are modified. 92If the 93.Fl v 94option is specified more than once, the old and new flags of the file 95will also be printed, in octal notation. 96.El 97.Pp 98The flags are specified as an octal number or a comma separated list 99of keywords. 100The following keywords are currently defined: 101.Pp 102.Bl -tag -offset indent -width ".Cm opaque" 103.It Cm arch , archived 104set the archived flag (super-user only) 105.It Cm opaque 106set the opaque flag (owner or super-user only) 107.It Cm nodump 108set the nodump flag (owner or super-user only) 109.It Cm sappnd , sappend 110set the system append-only flag (super-user only) 111.It Cm schg , schange , simmutable 112set the system immutable flag (super-user only) 113.It Cm sunlnk , sunlink 114set the system undeletable flag (super-user only) 115.It Cm uappnd , uappend 116set the user append-only flag (owner or super-user only) 117.It Cm uchg , uchange , uimmutable 118set the user immutable flag (owner or super-user only) 119.It Cm uunlnk , uunlink 120set the user undeletable flag (owner or super-user only) 121.El 122.Pp 123Putting the letters 124.Dq Ar no 125before or removing the letters 126.Dq Ar no 127from a keyword causes the flag to be cleared. 128For example: 129.Pp 130.Bl -tag -offset indent -width "nouchg" -compact 131.It Cm nouchg 132clear the user immutable flag (owner or super-user only) 133.It Cm dump 134clear the nodump flag (owner or super-user only) 135.El 136.Pp 137A few of the octal values include: 138.Bl -tag -offset indent -width ".Li 10" 139.It Li 0 140Clear all file flags. 141.It Li 1 142Translates to the 143.Cm nodump 144keyword. 145.It Li 2 146Translates to the 147.Cm uchg 148keyword. 149.It Li 3 150Translates to the 151.Cm uchg , nodump 152keywords. 153.It Li 4 154Translates to the 155.Cm uappnd 156keyword. 157.It Li 10 158Translates to the 159.Cm opaque 160keyword. 161.It Li 20 162translates to the 163.Cm uunlnk 164keyword. 165.El 166.Pp 167Other combinations of keywords may be placed by using 168the octets assigned; however, these are the most notable. 169.Pp 170Unless the 171.Fl H , 172.Fl L , 173or 174.Fl h 175options are given, 176.Nm 177on a symbolic link always succeeds and has no effect. 178The 179.Fl H , 180.Fl L 181and 182.Fl P 183options are ignored unless the 184.Fl R 185option is specified. 186In addition, these options override each other and the 187command's actions are determined by the last one specified. 188.Pp 189You can use "ls -lo" to see the flags of existing files. 190.Pp 191Note that the ability to change certain flags is dependent 192on the current kernel 193.Va securelevel 194setting. 195See 196.Xr security 7 197for more information on this setting. 198.Sh EXIT STATUS 199.Ex -std 200.Sh SEE ALSO 201.Xr ls 1 , 202.Xr chflags 2 , 203.Xr stat 2 , 204.Xr fts 3 , 205.Xr security 7 , 206.Xr symlink 7 207.Sh HISTORY 208The 209.Nm 210command first appeared in 211.Bx 4.4 . 212.Sh BUGS 213Only a limited number of utilities are 214.Nm 215aware. 216Some of these tools include 217.Xr ls 1 , 218.Xr cp 1 , 219.Xr find 1 , 220.Xr install 1 , 221.Xr dump 8 , 222and 223.Xr restore 8 . 224In particular a tool which is not currently 225.Nm 226aware is the 227.Xr pax 1 228utility. 229