1.\" Copyright (c) 1980, 1991, 1993, 1994 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. All advertising materials mentioning features or use of this software 13.\" must display the following acknowledgement: 14.\" This product includes software developed by the University of 15.\" California, Berkeley and its contributors. 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.\" @(#)chown.2 8.4 (Berkeley) 4/19/94 33.\" $FreeBSD: src/lib/libc/sys/chown.2,v 1.12.2.6 2001/12/14 18:34:00 ru Exp $ 34.\" 35.Dd April 19, 1994 36.Dt CHOWN 2 37.Os 38.Sh NAME 39.Nm chown , 40.Nm fchown , 41.Nm lchown 42.Nd change owner and group of a file 43.Sh LIBRARY 44.Lb libc 45.Sh SYNOPSIS 46.In unistd.h 47.Ft int 48.Fn chown "const char *path" "uid_t owner" "gid_t group" 49.Ft int 50.Fn fchown "int fd" "uid_t owner" "gid_t group" 51.Ft int 52.Fn lchown "const char *path" "uid_t owner" "gid_t group" 53.Sh DESCRIPTION 54The owner ID and group ID of the file 55named by 56.Fa path 57or referenced by 58.Fa fd 59is changed as specified by the arguments 60.Fa owner 61and 62.Fa group . 63The owner of a file may change the 64.Fa group 65to a group of which 66he or she is a member, 67but the change 68.Fa owner 69capability is restricted to the super-user. 70.Pp 71.Fn Chown 72clears the set-user-id and set-group-id bits 73on the file 74to prevent accidental or mischievous creation of 75set-user-id and set-group-id programs if not executed 76by the super-user. 77.Fn chown 78follows symbolic links to operate on the target of the link 79rather than the link itself. 80.Pp 81.Fn Fchown 82is particularly useful when used in conjunction 83with the file locking primitives (see 84.Xr flock 2 ) . 85.Pp 86.Fn Lchown 87is similar to 88.Fn chown 89but does not follow symbolic links. 90.Pp 91One of the owner or group id's 92may be left unchanged by specifying it as -1. 93.Sh RETURN VALUES 94.Rv -std 95.Sh ERRORS 96.Fn Chown 97and 98.Fn lchown 99will fail and the file will be unchanged if: 100.Bl -tag -width Er 101.It Bq Er ENOTDIR 102A component of the path prefix is not a directory. 103.It Bq Er ENAMETOOLONG 104A component of a pathname exceeded 255 characters, 105or an entire path name exceeded 1023 characters. 106.It Bq Er ENOENT 107The named file does not exist. 108.It Bq Er EACCES 109Search permission is denied for a component of the path prefix. 110.It Bq Er ELOOP 111Too many symbolic links were encountered in translating the pathname. 112.It Bq Er EPERM 113The effective user ID is not the super-user. 114.It Bq Er EROFS 115The named file resides on a read-only file system. 116.It Bq Er EFAULT 117.Fa Path 118points outside the process's allocated address space. 119.It Bq Er EIO 120An I/O error occurred while reading from or writing to the file system. 121.El 122.Pp 123.Fn Fchown 124will fail if: 125.Bl -tag -width Er 126.It Bq Er EBADF 127.Fa fd 128does not refer to a valid descriptor. 129.It Bq Er EINVAL 130.Fa fd 131refers to a socket, not a file. 132.It Bq Er EPERM 133The effective user ID is not the super-user. 134.It Bq Er EROFS 135The named file resides on a read-only file system. 136.It Bq Er EIO 137An I/O error occurred while reading from or writing to the file system. 138.El 139.Sh SEE ALSO 140.Xr chgrp 1 , 141.Xr chmod 2 , 142.Xr flock 2 , 143.Xr chown 8 144.Sh STANDARDS 145The 146.Fn chown 147function call is expected to conform to 148.St -p1003.1-90 . 149.Sh HISTORY 150A 151.Fn chown 152function call appeared in 153.At v7 . 154The 155.Fn fchown 156function call 157appeared in 158.Bx 4.2 . 159.Pp 160The 161.Fn chown 162function was changed to follow symbolic links in 163.Bx 4.4 . 164The 165.Fn lchown 166function was added in 167.Fx 3.0 168to compensate for the loss of functionality. 169