< chown - change the owner of a file >
You can change the owner and group of a file or a directory with the chown
command. Please, keep in mind you can do this only if you are the root user or the owner of the file.
Set the file's owner:
$ chown username somefile
After giving this command, the new owner of a file called somefile
will be the user username
. The file's group owner will not change. Instead of a user name, you can also give the user's numeric ID here if you want.
You can also set the file's group at the same time. If the user name is followed by a colon and a group name, the file's group will be changed as well.
$ chown username:usergroup somefile
After giving this command, somefile
's new owner would be user username
and the group usergroup
.
You can set the owner of a directory exactly the same way you set the owner of a file:
$ chown username somedir
Note that after giving this command, only the owner of the directory will change. The owner of the files inside of the directory won't change.
In order to set the ownership of a directory and all the files in that directory, you'll need the -R
option:
$ chown -R username somedir
Here, R stands for recursive because this command will recursively change the ownership of directories and their contents. After issuing this example command, the user username
will be the owner of the directory somedir
, as well as every file in that directory.
Tell what happens:
$ chown -v username somefile
changed ownership of 'somefile' to username
Here, v stands for verbose. If you use the -v
option, chown
will list what it did (or didn't do) to the file.
The verbose mode is especially useful if you change the ownership of several files at once. For example, this could happen when you do it recursively:
$ chown -Rv username somedir
changed ownership of 'somedir/' to username
changed ownership of 'somedir/boringfile' to username
changed ownership of 'somedir/somefile' to username
As you can see, chown
nicely reports to you what it did to each file.