chown命令改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。
(1)用法:
用法: chown [选项]... [所有者][:[组]] 文件...
或 chown [选项]... --reference=参考文件 文件...
(2)功能:
功能: 更改每个文件的所有者和/或所属组。
当使用 --referebce 参数时,将文件的所有者和所属组更改为与指定参考文件相同。
用户可以是用户或者是用户D,用户组可以是组名或组id。文件名可以使由空格分开的文件列表,在文件名中可以包含通配符。
(3)选项参数:
1) -R --recursive 递归处理,将指定目录下的所有文件及子目录一并处理
2) -f 忽略错误信息
3) -v 显示详细的处理信息
4) -c 显示更改的部分的信息
5) --reference=<参考文件或目录> 把指定文件或目录的拥有者与所属群组全部设成和参考文件或目录的拥有者与所属群组相同
(4)实例:
1)[[email protected] Documents]# chown -v sunjimeng findDir/Dir/{head_text,less1,less2} 改变文件的拥有者(指名多个文件时还可以用空格隔开)
[[email protected] Documents]# ls -l findDir/Dir 总用量 12 -r-xr-xr-x. 1 root root 664 5月 9 07:59 head_text -r-xr-xr-x. 1 root root 45 5月 9 08:15 less1 -r-xr-xr-x. 1 root root 57 5月 9 08:16 less2 [[email protected] Documents]# chown -v sunjimeng findDir/Dir/{head_text,less1,less2} 在指明路径时,findDir在当前目录Documents下,所以不能带/。 changed ownership of "findDir/Dir/head_text" from root to sunjimeng changed ownership of "findDir/Dir/less1" from root to sunjimeng changed ownership of "findDir/Dir/less2" from root to sunjimeng [[email protected] Documents]# ls -l findDir/Dir 总用量 12 -r-xr-xr-x. 1 sunjimeng root 664 5月 9 07:59 head_text -r-xr-xr-x. 1 sunjimeng root 45 5月 9 08:15 less1 -r-xr-xr-x. 1 sunjimeng root 57 5月 9 08:16 less2
2)[[email protected] Documents]# chown -vR sunjimeng findDir/Dir 递归地将文件夹下的所有文件的所属组改变
[[email protected] Documents]# ls -l findDir/Dir 总用量 12 -r-xr-xr-x. 1 sunjimeng root 664 5月 9 07:59 head_text -r-xr-xr-x. 1 sunjimeng root 45 5月 9 08:15 less1 -r-xr-xr-x. 1 sunjimeng root 57 5月 9 08:16 less2 [[email protected] Documents]# ls -l findDir 总用量 0 dr-xr-xr-x. 2 root root 46 5月 21 06:58 Dir //在实例1中并没有改变文件夹的所有者 [[email protected] Documents]# chown -v root findDir/Dir/{head_text,less1,less2} //先把所有者复原为root changed ownership of "findDir/Dir/head_text" from sunjimeng to root changed ownership of "findDir/Dir/less1" from sunjimeng to root changed ownership of "findDir/Dir/less2" from sunjimeng to root [[email protected] Documents]# chown -vR sunjimeng findDir/Dir //再递归地把Dir文件夹和其下的文件所有者更改 changed ownership of "findDir/Dir/head_text" from root to sunjimeng changed ownership of "findDir/Dir/less2" from root to sunjimeng changed ownership of "findDir/Dir/less1" from root to sunjimeng changed ownership of "findDir/Dir" from root to sunjimeng [[email protected] Documents]# ls -l findDir //在这里查看,文件夹Dir及其下文件的所有者都已经改变为sunjimeng 总用量 0 dr-xr-xr-x. 2 sunjimeng root 46 5月 21 06:58 Dir [[email protected] Documents]# ls -l findDir/Dir 总用量 12 -r-xr-xr-x. 1 sunjimeng root 664 5月 9 07:59 head_text -r-xr-xr-x. 1 sunjimeng root 45 5月 9 08:15 less1 -r-xr-xr-x. 1 sunjimeng root 57 5月 9 08:16 less2
3[[email protected] Documents]# chown -vR root:sunjimeng findDir 改变所有者的同时改变所属组
[[email protected] Documents]# chown -vR root:sunjimeng findDir changed ownership of "findDir/Dir/head_text" from sunjimeng:root to root:sunjimeng changed ownership of "findDir/Dir/less2" from sunjimeng:root to root:sunjimeng changed ownership of "findDir/Dir/less1" from sunjimeng:root to root:sunjimeng changed ownership of "findDir/Dir" from sunjimeng:root to root:sunjimeng changed ownership of "findDir" from root:root to root:sunjimeng [[email protected] Documents]# ll findDir 总用量 0 dr-xr-xr-x. 2 root sunjimeng 46 5月 21 06:58 Dir [[email protected] Documents]# ll findDir/Dir 总用量 12 -r-xr-xr-x. 1 root sunjimeng 664 5月 9 07:59 head_text -r-xr-xr-x. 1 root sunjimeng 45 5月 9 08:15 less1 -r-xr-xr-x. 1 root sunjimeng 57 5月 9 08:16 less2
4)[[email protected] Dir]# chown -c .root head_text less1 只改变文件的所属组(-c参数与-v类似)
[[email protected] Dir]# ll 总用量 12 -r-xr-xr-x. 1 root sunjimeng 664 5月 9 07:59 head_text -r-xr-xr-x. 1 root sunjimeng 45 5月 9 08:15 less1 -r-xr-xr-x. 1 root sunjimeng 57 5月 9 08:16 less2 [[email protected] Dir]# chown -c .root head_text less1 changed ownership of "head_text" from root:sunjimeng to :root changed ownership of "less1" from root:sunjimeng to :root [[email protected] Dir]# chgrp -v root head_text less2 "head_text" 的所属组已保留为root //因为文件的所属组已经为root了,所以这里显示保留为root changed group of "less2" from sunjimeng to root [[email protected] Dir]# ll 总用量 12 -r-xr-xr-x. 1 root root 664 5月 9 07:59 head_text -r-xr-xr-x. 1 root root 45 5月 9 08:15 less1 -r-xr-xr-x. 1 root root 57 5月 9 08:16 less2
5)[[email protected] Dir]# chown -v :sunjimeng less1 和[[email protected] Dir]# chown -v :sunjimeng less1 和[[email protected] Dir]# chown -v sunjimeng head_text
[[email protected] Dir]# ll 总用量 12 -r-xr-xr-x. 1 root root 664 5月 9 07:59 head_text -r-xr-xr-x. 1 root root 45 5月 9 08:15 less1 -r-xr-xr-x. 1 root root 57 5月 9 08:16 less2 [[email protected] Dir]# chown -v :sunjimeng less1 changed ownership of "less1" from root:root to :sunjimeng [[email protected] Dir]# chown -v .sunjimeng less2 changed ownership of "less2" from root:root to :sunjimeng [[email protected] Dir]# chown -v sunjimeng head_text changed ownership of "head_text" from root to sunjimeng [[email protected] Dir]# ll 总用量 12 -r-xr-xr-x. 1 sunjimeng root 664 5月 9 07:59 head_text -r-xr-xr-x. 1 root sunjimeng 45 5月 9 08:15 less1 -r-xr-xr-x. 1 root sunjimeng 57 5月 9 08:16 less2
(5)其他:
在更改文件的所有者或所属群组时,可以使用用户名称和用户识别码设置。普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员。
以下选项是在指定了 -R 选项时被用于设置如何穿越目录结构体系。 如果您指定了多于一个选项,那么只有最后一个会生效。
-H 如果命令行参数是一个通到目录的符号链接,则遍历符号链接 -L 遍历每一个遇到的通到目录的符号链接
-P 不遍历任何符号链接(默认)
--help 显示此帮助信息并退出
--version 显示版本信息并退出 如果没有指定所有者,则不会更改。
所属组若没有指定也不会更改,但当加上 ":"时 GROUP 会更改为指定所有者的主要组。所有者和所属组可以是数字或名称。