xref: /freebsd/bin/chmod/chmod.1 (revision 95a09b05570779579c2c9bf092552ba512c0ebdf)
14b88c807SRodney W. Grimes.\" Copyright (c) 1989, 1990, 1993, 1994
24b88c807SRodney W. Grimes.\"	The Regents of the University of California.  All rights reserved.
34b88c807SRodney W. Grimes.\"
44b88c807SRodney W. Grimes.\" This code is derived from software contributed to Berkeley by
54b88c807SRodney W. Grimes.\" the Institute of Electrical and Electronics Engineers, Inc.
64b88c807SRodney W. Grimes.\"
74b88c807SRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without
84b88c807SRodney W. Grimes.\" modification, are permitted provided that the following conditions
94b88c807SRodney W. Grimes.\" are met:
104b88c807SRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright
114b88c807SRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer.
124b88c807SRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright
134b88c807SRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer in the
144b88c807SRodney W. Grimes.\"    documentation and/or other materials provided with the distribution.
154b88c807SRodney W. Grimes.\" 3. All advertising materials mentioning features or use of this software
164b88c807SRodney W. Grimes.\"    must display the following acknowledgement:
174b88c807SRodney W. Grimes.\"	This product includes software developed by the University of
184b88c807SRodney W. Grimes.\"	California, Berkeley and its contributors.
194b88c807SRodney W. Grimes.\" 4. Neither the name of the University nor the names of its contributors
204b88c807SRodney W. Grimes.\"    may be used to endorse or promote products derived from this software
214b88c807SRodney W. Grimes.\"    without specific prior written permission.
224b88c807SRodney W. Grimes.\"
234b88c807SRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
244b88c807SRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
254b88c807SRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
264b88c807SRodney W. Grimes.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
274b88c807SRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
284b88c807SRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
294b88c807SRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
304b88c807SRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
314b88c807SRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
324b88c807SRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
334b88c807SRodney W. Grimes.\" SUCH DAMAGE.
344b88c807SRodney W. Grimes.\"
354b88c807SRodney W. Grimes.\"	@(#)chmod.1	8.4 (Berkeley) 3/31/94
362a456239SPeter Wemm.\" $FreeBSD$
374b88c807SRodney W. Grimes.\"
384b88c807SRodney W. Grimes.Dd March 31, 1994
394b88c807SRodney W. Grimes.Dt CHMOD 1
404b88c807SRodney W. Grimes.Os
414b88c807SRodney W. Grimes.Sh NAME
424b88c807SRodney W. Grimes.Nm chmod
434b88c807SRodney W. Grimes.Nd change file modes
444b88c807SRodney W. Grimes.Sh SYNOPSIS
45be8b1497SRuslan Ermilov.Nm
464b88c807SRodney W. Grimes.Oo
477007d55cSChris Costello.Fl f
484b88c807SRodney W. Grimes.Fl R
494b88c807SRodney W. Grimes.Op Fl H | Fl L | Fl P
505bb83b98SDavid E. O'Brien.Fl v
514b88c807SRodney W. Grimes.Oc
524b88c807SRodney W. Grimes.Ar mode
5347dec781SRuslan Ermilov.Ar
544b88c807SRodney W. Grimes.Sh DESCRIPTION
554b88c807SRodney W. GrimesThe
56cbf6f7d3SPhilippe Charnier.Nm
574b88c807SRodney W. Grimesutility modifies the file mode bits of the listed files
584b88c807SRodney W. Grimesas specified by the
594b88c807SRodney W. Grimes.Ar mode
604b88c807SRodney W. Grimesoperand.
614b88c807SRodney W. Grimes.Pp
624b88c807SRodney W. GrimesThe options are as follows:
634b88c807SRodney W. Grimes.Bl -tag -width Ds
644b88c807SRodney W. Grimes.It Fl H
654b88c807SRodney W. GrimesIf the
664b88c807SRodney W. Grimes.Fl R
674b88c807SRodney W. Grimesoption is specified, symbolic links on the command line are followed.
68aa387b2dSBill Swingle(Symbolic links encountered in the tree traversal are not followed by
69aa387b2dSBill Swingledefault.)
704b88c807SRodney W. Grimes.It Fl L
714b88c807SRodney W. GrimesIf the
724b88c807SRodney W. Grimes.Fl R
734b88c807SRodney W. Grimesoption is specified, all symbolic links are followed.
744b88c807SRodney W. Grimes.It Fl P
754b88c807SRodney W. GrimesIf the
764b88c807SRodney W. Grimes.Fl R
774b88c807SRodney W. Grimesoption is specified, no symbolic links are followed.
7895a09b05SRuslan ErmilovThis is the default.
794b88c807SRodney W. Grimes.It Fl R
804b88c807SRodney W. GrimesChange the modes of the file hierarchies rooted in the files
814b88c807SRodney W. Grimesinstead of just the files themselves.
827007d55cSChris Costello.It Fl f
837007d55cSChris CostelloDo not display a diagnostic message if
847007d55cSChris Costello.Nm
857007d55cSChris Costellocould not modify the mode for
86aa387b2dSBill Swingle.Va file .
875bb83b98SDavid E. O'Brien.It Fl v
885bb83b98SDavid E. O'BrienCause
895bb83b98SDavid E. O'Brien.Nm
905bb83b98SDavid E. O'Briento be verbose, showing files as the mode is modified.
914b88c807SRodney W. Grimes.El
924b88c807SRodney W. Grimes.Pp
934b88c807SRodney W. GrimesSymbolic links do not have modes, so unless the
944b88c807SRodney W. Grimes.Fl H
954b88c807SRodney W. Grimesor
964b88c807SRodney W. Grimes.Fl L
974b88c807SRodney W. Grimesoption is set,
98cbf6f7d3SPhilippe Charnier.Nm
994b88c807SRodney W. Grimeson a symbolic link always succeeds and has no effect.
1004b88c807SRodney W. GrimesThe
1014b88c807SRodney W. Grimes.Fl H ,
1024b88c807SRodney W. Grimes.Fl L
1034b88c807SRodney W. Grimesand
1044b88c807SRodney W. Grimes.Fl P
1054b88c807SRodney W. Grimesoptions are ignored unless the
1064b88c807SRodney W. Grimes.Fl R
1074b88c807SRodney W. Grimesoption is specified.
1084b88c807SRodney W. GrimesIn addition, these options override each other and the
1094b88c807SRodney W. Grimescommand's actions are determined by the last one specified.
1104b88c807SRodney W. Grimes.Pp
1114b88c807SRodney W. GrimesOnly the owner of a file or the super-user is permitted to change
1124b88c807SRodney W. Grimesthe mode of a file.
11346be34b9SKris Kennaway.Sh DIAGNOSTICS
1144b88c807SRodney W. GrimesThe
115cbf6f7d3SPhilippe Charnier.Nm
1164b88c807SRodney W. Grimesutility exits 0 on success, and >0 if an error occurs.
1174b88c807SRodney W. Grimes.Sh MODES
1184b88c807SRodney W. GrimesModes may be absolute or symbolic.
119d5440753SJoseph KoshyAn absolute mode is an octal number constructed from the sum of
120d5440753SJoseph Koshyone or more of the following values:
1214b88c807SRodney W. Grimes.Pp
1224b88c807SRodney W. Grimes.Bl -tag -width 6n -compact -offset indent
1234b88c807SRodney W. Grimes.It Li 4000
124d5440753SJoseph Koshy(the set-user-ID-on-execution bit) Executable files with this bit set
125d5440753SJoseph Koshywill run with effective uid set to the uid of the file owner.
126d5440753SJoseph KoshyDirectories with the set-user-id bit set will force all files and
127d5440753SJoseph Koshysub-directories created in them to be owned by the directory owner
128d5440753SJoseph Koshyand not by the uid of the creating process, if the underlying file
129d5440753SJoseph Koshysystem supports this feature: see
13052bf64c7SJulian Elischer.Xr chmod 2
131d5440753SJoseph Koshyand the
132d5440753SJoseph Koshy.Ar suiddir
133d5440753SJoseph Koshyoption to
134cc056fafSChris Costello.Xr mount 8 .
1354b88c807SRodney W. Grimes.It Li 2000
136d5440753SJoseph Koshy(the set-group-ID-on-execution bit)  Executable files with this bit set
137d5440753SJoseph Koshywill run with effective gid set to the gid of the file owner.
1384b88c807SRodney W. Grimes.It Li 1000
139d5440753SJoseph Koshy(the sticky bit)
140d5440753SJoseph KoshyWhen set on a directory, unprivileged users can delete and rename
141d5440753SJoseph Koshyonly those files in the directory that are owned by them, regardless of
142b5c508fbSRuslan Ermilovthe permissions on the directory.  Under
143b5c508fbSRuslan Ermilov.Fx ,
144b5c508fbSRuslan Ermilovthe sticky bit is
145d5440753SJoseph Koshyignored for executable files and may only be set for directories (see
146d5440753SJoseph Koshy.Xr sticky 8 ) .
1474b88c807SRodney W. Grimes.It Li 0400
148d5440753SJoseph KoshyAllow read by owner.
1494b88c807SRodney W. Grimes.It Li 0200
150d5440753SJoseph KoshyAllow write by owner.
1514b88c807SRodney W. Grimes.It Li 0100
152d5440753SJoseph KoshyFor files, allow execution by owner.  For directories, allow the owner to
153d5440753SJoseph Koshysearch in the directory.
154d5440753SJoseph Koshy.It Li 0040
155d5440753SJoseph KoshyAllow read by group members.
156d5440753SJoseph Koshy.It Li 0020
157d5440753SJoseph KoshyAllow write by group members.
158d5440753SJoseph Koshy.It Li 0010
159d5440753SJoseph KoshyFor files, allow execution by group members.  For directories, allow
160d5440753SJoseph Koshygroup members to search in the directory.
161d5440753SJoseph Koshy.It Li 0004
162d5440753SJoseph KoshyAllow read by others.
163d5440753SJoseph Koshy.It Li 0002
164d5440753SJoseph KoshyAllow write by others.
165d5440753SJoseph Koshy.It Li 0001
166d5440753SJoseph KoshyFor files, allow execution by others.  For directories allow others to
167d5440753SJoseph Koshysearch in the directory.
1684b88c807SRodney W. Grimes.El
1694b88c807SRodney W. Grimes.Pp
170d5440753SJoseph KoshyFor example, the absolute mode that permits read, write and execute by
171d5440753SJoseph Koshythe owner, read and execute by group members, read and execute by
172d5440753SJoseph Koshyothers, and no set-uid or set-gid behaviour is 755
173d5440753SJoseph Koshy(400+200+100+040+010+004+001).
1744b88c807SRodney W. Grimes.Pp
1754b88c807SRodney W. GrimesThe symbolic mode is described by the following grammar:
1764b88c807SRodney W. Grimes.Bd -literal -offset indent
1774b88c807SRodney W. Grimesmode         ::= clause [, clause ...]
178aa387b2dSBill Swingleclause       ::= [who ...] [action ...] action
1794b88c807SRodney W. Grimesaction       ::= op [perm ...]
1804b88c807SRodney W. Grimeswho          ::= a | u | g | o
1814b88c807SRodney W. Grimesop           ::= + | \- | =
1824b88c807SRodney W. Grimesperm         ::= r | s | t | w | x | X | u | g | o
1834b88c807SRodney W. Grimes.Ed
1844b88c807SRodney W. Grimes.Pp
1854b88c807SRodney W. GrimesThe
1864b88c807SRodney W. Grimes.Ar who
1874b88c807SRodney W. Grimessymbols ``u'', ``g'', and ``o'' specify the user, group, and other parts
1884b88c807SRodney W. Grimesof the mode bits, respectively.
1894b88c807SRodney W. GrimesThe
1904b88c807SRodney W. Grimes.Ar who
1914b88c807SRodney W. Grimessymbol ``a'' is equivalent to ``ugo''.
1924b88c807SRodney W. Grimes.Pp
1934b88c807SRodney W. GrimesThe
1944b88c807SRodney W. Grimes.Ar perm
1954b88c807SRodney W. Grimessymbols represent the portions of the mode bits as follows:
1964b88c807SRodney W. Grimes.Pp
1974b88c807SRodney W. Grimes.Bl -tag -width Ds -compact -offset indent
1984b88c807SRodney W. Grimes.It r
1994b88c807SRodney W. GrimesThe read bits.
2004b88c807SRodney W. Grimes.It s
2014b88c807SRodney W. GrimesThe set-user-ID-on-execution and set-group-ID-on-execution bits.
2024b88c807SRodney W. Grimes.It t
2034b88c807SRodney W. GrimesThe sticky bit.
2044b88c807SRodney W. Grimes.It w
2054b88c807SRodney W. GrimesThe write bits.
2064b88c807SRodney W. Grimes.It x
2074b88c807SRodney W. GrimesThe execute/search bits.
2084b88c807SRodney W. Grimes.It X
2094b88c807SRodney W. GrimesThe execute/search bits if the file is a directory or any of the
2104b88c807SRodney W. Grimesexecute/search bits are set in the original (unmodified) mode.
2114b88c807SRodney W. GrimesOperations with the
2124b88c807SRodney W. Grimes.Ar perm
2134b88c807SRodney W. Grimessymbol ``X'' are only meaningful in conjunction with the
2144b88c807SRodney W. Grimes.Ar op
2154b88c807SRodney W. Grimessymbol ``+'', and are ignored in all other cases.
2164b88c807SRodney W. Grimes.It u
2174b88c807SRodney W. GrimesThe user permission bits in the mode of the original file.
2184b88c807SRodney W. Grimes.It g
2194b88c807SRodney W. GrimesThe group permission bits in the mode of the original file.
2204b88c807SRodney W. Grimes.It o
2214b88c807SRodney W. GrimesThe other permission bits in the mode of the original file.
2224b88c807SRodney W. Grimes.El
2234b88c807SRodney W. Grimes.Pp
2244b88c807SRodney W. GrimesThe
2254b88c807SRodney W. Grimes.Ar op
2264b88c807SRodney W. Grimessymbols represent the operation performed, as follows:
2274b88c807SRodney W. Grimes.Bl -tag -width 4n
2284b88c807SRodney W. Grimes.It +
2294b88c807SRodney W. GrimesIf no value is supplied for
2304b88c807SRodney W. Grimes.Ar perm ,
2314b88c807SRodney W. Grimesthe ``+'' operation has no effect.
2324b88c807SRodney W. GrimesIf no value is supplied for
2334b88c807SRodney W. Grimes.Ar who ,
2344b88c807SRodney W. Grimeseach permission bit specified in
2354b88c807SRodney W. Grimes.Ar perm ,
2364b88c807SRodney W. Grimesfor which the corresponding bit in the file mode creation mask
2374b88c807SRodney W. Grimesis clear, is set.
2384b88c807SRodney W. GrimesOtherwise, the mode bits represented by the specified
2394b88c807SRodney W. Grimes.Ar who
2404b88c807SRodney W. Grimesand
2414b88c807SRodney W. Grimes.Ar perm
2424b88c807SRodney W. Grimesvalues are set.
2434b88c807SRodney W. Grimes.It \&\-
2444b88c807SRodney W. GrimesIf no value is supplied for
2454b88c807SRodney W. Grimes.Ar perm ,
2464b88c807SRodney W. Grimesthe ``\-'' operation has no effect.
2474b88c807SRodney W. GrimesIf no value is supplied for
2484b88c807SRodney W. Grimes.Ar who ,
2494b88c807SRodney W. Grimeseach permission bit specified in
2504b88c807SRodney W. Grimes.Ar perm ,
2514b88c807SRodney W. Grimesfor which the corresponding bit in the file mode creation mask
2524b88c807SRodney W. Grimesis clear, is cleared.
2534b88c807SRodney W. GrimesOtherwise, the mode bits represented by the specified
2544b88c807SRodney W. Grimes.Ar who
2554b88c807SRodney W. Grimesand
2564b88c807SRodney W. Grimes.Ar perm
2574b88c807SRodney W. Grimesvalues are cleared.
2584b88c807SRodney W. Grimes.It =
2594b88c807SRodney W. GrimesThe mode bits specified by the
2604b88c807SRodney W. Grimes.Ar who
2614b88c807SRodney W. Grimesvalue are cleared, or, if no who value is specified, the owner, group
2624b88c807SRodney W. Grimesand other mode bits are cleared.
2634b88c807SRodney W. GrimesThen, if no value is supplied for
2644b88c807SRodney W. Grimes.Ar who ,
2654b88c807SRodney W. Grimeseach permission bit specified in
2664b88c807SRodney W. Grimes.Ar perm ,
2674b88c807SRodney W. Grimesfor which the corresponding bit in the file mode creation mask
2684b88c807SRodney W. Grimesis clear, is set.
2694b88c807SRodney W. GrimesOtherwise, the mode bits represented by the specified
2704b88c807SRodney W. Grimes.Ar who
2714b88c807SRodney W. Grimesand
2724b88c807SRodney W. Grimes.Ar perm
2734b88c807SRodney W. Grimesvalues are set.
2744b88c807SRodney W. Grimes.El
2754b88c807SRodney W. Grimes.Pp
2764b88c807SRodney W. GrimesEach
2774b88c807SRodney W. Grimes.Ar clause
2784b88c807SRodney W. Grimesspecifies one or more operations to be performed on the mode
2794b88c807SRodney W. Grimesbits, and each operation is applied to the mode bits in the
2804b88c807SRodney W. Grimesorder specified.
2814b88c807SRodney W. Grimes.Pp
2824b88c807SRodney W. GrimesOperations upon the other permissions only (specified by the symbol
2834b88c807SRodney W. Grimes``o'' by itself), in combination with the
2844b88c807SRodney W. Grimes.Ar perm
2854b88c807SRodney W. Grimessymbols ``s'' or ``t'', are ignored.
2864b88c807SRodney W. Grimes.Sh EXAMPLES
2874b88c807SRodney W. Grimes.Bl -tag -width "u=rwx,go=u-w" -compact
2884b88c807SRodney W. Grimes.It Li 644
2894b88c807SRodney W. Grimesmake a file readable by anyone and writable by the owner only.
2904b88c807SRodney W. Grimes.Pp
2914b88c807SRodney W. Grimes.It Li go-w
2924b88c807SRodney W. Grimesdeny write permission to group and others.
2934b88c807SRodney W. Grimes.Pp
2944b88c807SRodney W. Grimes.It Li =rw,+X
2954b88c807SRodney W. Grimesset the read and write permissions to the usual defaults, but
2964b88c807SRodney W. Grimesretain any execute permissions that are currently set.
2974b88c807SRodney W. Grimes.Pp
2984b88c807SRodney W. Grimes.It Li +X
2994b88c807SRodney W. Grimesmake a directory or file searchable/executable by everyone if it is
3004b88c807SRodney W. Grimesalready searchable/executable by anyone.
3014b88c807SRodney W. Grimes.Pp
3024b88c807SRodney W. Grimes.It Li 755
3034b88c807SRodney W. Grimes.It Li u=rwx,go=rx
3044b88c807SRodney W. Grimes.It Li u=rwx,go=u-w
3054b88c807SRodney W. Grimesmake a file readable/executable by everyone and writable by the owner only.
3064b88c807SRodney W. Grimes.Pp
3074b88c807SRodney W. Grimes.It Li go=
3084b88c807SRodney W. Grimesclear all mode bits for group and others.
3094b88c807SRodney W. Grimes.Pp
3104b88c807SRodney W. Grimes.It Li g=u-w
3114b88c807SRodney W. Grimesset the group bits equal to the user bits, but clear the group write bit.
3124b88c807SRodney W. Grimes.El
3134b88c807SRodney W. Grimes.Sh BUGS
3144b88c807SRodney W. GrimesThere's no
3154b88c807SRodney W. Grimes.Ar perm
3164b88c807SRodney W. Grimesoption for the naughty bits.
3175bb83b98SDavid E. O'Brien.Sh COMPATIBILITY
3185bb83b98SDavid E. O'BrienThe
3195bb83b98SDavid E. O'Brien.Fl v
3205bb83b98SDavid E. O'Brienoption is non-standard and its use in scripts is not recommended.
3214b88c807SRodney W. Grimes.Sh SEE ALSO
322825e82efSJoerg Wunsch.Xr chflags 1 ,
3234b88c807SRodney W. Grimes.Xr install 1 ,
3244b88c807SRodney W. Grimes.Xr chmod 2 ,
3254b88c807SRodney W. Grimes.Xr stat 2 ,
3264b88c807SRodney W. Grimes.Xr umask 2 ,
3274b88c807SRodney W. Grimes.Xr fts 3 ,
3284b88c807SRodney W. Grimes.Xr setmode 3 ,
3294b88c807SRodney W. Grimes.Xr symlink 7 ,
330d5440753SJoseph Koshy.Xr chown 8 ,
331a84e119fSChris Costello.Xr mount 8 ,
332d5440753SJoseph Koshy.Xr sticky 8
3334b88c807SRodney W. Grimes.Sh STANDARDS
3344b88c807SRodney W. GrimesThe
335cbf6f7d3SPhilippe Charnier.Nm
3361686b602SSteve Priceutility is expected to be
3371686b602SSteve Price.St -p1003.2
3384b88c807SRodney W. Grimescompatible with the exception of the
3394b88c807SRodney W. Grimes.Ar perm
34002c724b4SBen Smithurstsymbol
3414b88c807SRodney W. Grimes.Dq t
34202c724b4SBen Smithurstwhich is not included in that standard.
343b8923d4cSWolfram Schneider.Sh HISTORY
344b8923d4cSWolfram SchneiderA
345b8923d4cSWolfram Schneider.Nm
346b8923d4cSWolfram Schneidercommand appeared in
347b8923d4cSWolfram Schneider.At v1 .
348