The chown utility sets the user ID of the file named by each file to the user ID specified by owner, and, optionally, sets the group ID to that specified by group.
If chown is invoked by other than the super-user, the set-user-ID bit is cleared.
Only the owner of a file (or the super-user) can change the owner of that file.
The operating system has a configuration option {_POSIX_CHOWN_RESTRICTED}, to restrict ownership changes. When this option is in effect the owner of the file is prevented from changing the owner ID of the file. Only the super-user can arbitrarily change
owner IDs whether or not this option is in effect. To set this configuration option, include the following line in /etc/system:
set rstchown = 1
To disable this option, include the following line in /etc/system:
set rstchown = 0
{_POSIX_CHOWN_RESTRICTED} is enabled by default. See system(4) and fpathconf(2).
ksh93
The chown built-in in ksh93 is associated with the /bin and /usr/bin paths. It is invoked when chown is executed without a pathname prefix and the pathname search finds a /bin/chown or
/usr/bin/chown executable.
chown changes the ownership of each file to owner. owner can be specified as either a user name or a numeric user id. The group ownership of each file can also be changed to group by appending :group to the user name.
OPTIONS
/usr/bin/chown and /usr/xpg4/bin/chown
The following options are supported:
-f
Force. Does not report errors.
-h
If the file is a symbolic link, this option changes the owner of the symbolic link. Without this option, the owner of the file referenced by the symbolic link is changed.
-H
If the file specified on the command line is a symbolic link referencing a file of type directory, this option changes the owner of the directory referenced by the symbolic link and all the files in the file hierarchy below it. If a symbolic link is encountered when traversing
a file hierarchy, the owner of the target file is changed, but no recursion takes place.
-L
If the file is a symbolic link, this option changes the owner of the file referenced by the symbolic link. If the file specified on the command line, or encountered during the traversal of the file hierarchy, is a symbolic link referencing a file of type directory, then this option
changes the owner of the directory referenced by the symbolic link and all files in the file hierarchy below it.
-P
If the file specified on the command line or encountered during the traversal of a file hierarchy is a symbolic link, this option changes the owner of the symbolic link. This option does not follow the symbolic link to any other part of the file hierarchy.
-s
The owner and/or group arguments are Windows SID strings. This option requires a file system that supports storing SIDs, such as ZFS.
Specifying more than one of the mutually-exclusive options -H, -L, or -P is not considered an error. The last option specified determines the behavior of chown.
/usr/bin/chown
The following options are supported:
-R
Recursive. chown descends through the directory, and any subdirectories, setting the specified ownership ID as it proceeds. When a symbolic link is encountered, the owner of the target file is changed, unless the -h or -P option
is specified. However, no recursion takes place, unless the -H or -L option is specified.
/usr/xpg4/bin/chown
The following options are supported:
-R
Recursive. chown descends through the directory, and any subdirectories, setting the specified ownership ID as it proceeds. When a symbolic link is encountered, the owner of the target file is changed, unless the -h or -P option
is specified. Unless the -H, -L, or -P option is specified, the -L option is used as the default mode.
ksh93
The following options are supported by the ksh93 built-in chown command:
-c --changes
Describe only files whose ownership actually changes.
-f --quiet | silent
Do not report files whose ownership fails to change.
-l | h --symlink
Change the ownership of the symbolic links on systems that support this option.
-m --map
Interpret the first operand as a file that contains a map of:
from_uid:from_gid to_uid:to_gid
pairs. Ownership of files matching the from part of any pair is changed to the corresponding to part of the pair. The process stops at the first match for each file. Unmatched files are silently ignored.
-n --show
Show actions but do not execute.
-r --reference=file
Omit the explicit ownership operand and use the ownership of the file instead.
-v --verbose
Describe the changed permissions of all files.
-H --metaphysical
Follow symbolic links for command arguments. Otherwise do not follow symbolic links when traversing directories.
-L --logical | follow
Follow symbolic links when traversing directories.
-P --physical | nofollow
Do not follow symbolic links when traversing directories.
-R --recursive
Recursively change ownership of directories and their contents.
-X --test
Canonicalize output for testing.
OPERANDS
The following operands are supported:
owner[:group]
A user ID and optional group ID to be assigned to file. The owner portion of this operand must be a user name from the user database or a numeric user ID. Either specifies a user ID to be given to each file named by file. If a numeric owner exists in the user database as a user name, the user ID number associated with that user name is used as the user ID. Similarly, if
the group portion of this operand is present, it must be a group name from the group database or a numeric group ID. Either specifies a group ID to be given to each file. If a numeric group operand exists in the group database as
a group name, the group ID number associated with that group name is used as the group ID.
file
A path name of a file whose user ID is to be modified.
USAGE
See largefile(5) for the description of the behavior of chown when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
EXAMPLES
Example 1 Changing Ownership of All Files in the Hierarchy
The following command changes ownership of all files in the hierarchy, including symbolic links, but not the targets of the links:
example% chown -R -h owner[:group] file...
ENVIRONMENT VARIABLES
See environ(5) for descriptions of the following environment variables that affect the execution of chown: LANG, LC_ALL, LC_CTYPE, LC_MESSAGES, and NLSPATH.
EXIT STATUS
The following exit values are returned:
0
The utility executed successfully and all requested changes were made.
>0
An error occurred.
FILES
/etc/passwd
System password file
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
/usr/bin/chown
ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
SUNWcsu
CSI
Interface Stability
Standard
/usr/xpg4/bin/chown
ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
SUNWxcu4
CSI
Interface Stability
Standard
ksh93
ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
SUNWcsu
Interface Stability
The ksh93 built-in binding to /bin and /usr/bin is Volatile. The built-in interfaces are Uncommitted.