概述
- chown(Change owner) 用来改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户ID,用户组可以是组名或组ID。只有文件主和超级用户才可以便用该命令。
用法
chown [选项]... [所有者][:[组]] 文件...
或:chown [选项]... --reference=参考文件 文件...
更改每个文件的所有者和/或所属组。当使用 --referebce 参数时,将文件的所有者和所属组更改为与指定参考文件相同。
参数
-c或-change:作用与-v相似,但只传回修改的部分
-f或–quiet或–silent:不显示错误信息
-h或–no-dereference:只对符号链接的文件做修改,而不更改其他任何相关文件
-R或-recursive:递归处理,将指定目录下的所有文件及子目录一并处理
-v或–verbose:显示指令执行过程
–dereference:作用和-h刚好相反
–help:显示在线说明
–reference=<参考文件或目录>:把指定文件或目录的所有者与所属组,统统设置成和参考文件或目录的所有者与所属组相同
–version:显示版本信息
例子
chown [-R] [用户名称] [文件或目录]
chown [-R] [用户名称:组名称] [文件或目录]
范例1:将test3.txt文件的属主改为test用户。
ls -l test3.txt
-rw-r–r– 1 test root 0 2009-10-23 9:59 test3.txt
chown test:root test3.txt
ls -l test3.txt
-rw-r–r– 1 test root 0 2009-10-23 9:59
范例2:chown所接的新的属主和新的属组之间可以使用:连接,属主和属组之一可以为空。如果属主为空,应该是“:属组”;如果属组为空,“:”可以不用带上。
ls -l test3.txt
-rw-r–r– 1 test root 0 2009-10-23 9:59 test3.txt
chown :test test3.txt <==把文件test3.txt的属组改为test
ls -l test3.txt
-rw-r–r– 1 test test 0 2009-10-23 9:59 test3.txt
范例3:chown也提供了-R参数,这个参数对目录改变属主和属组极为有用,可以通过加 -R参数来改变某个目录下的所有文件到新的属主或属组。
ls -l testdir <== 查看testdir目录属性
drwxr-xr-x 2 usr root 0 2009-10-56 10:38 testdir/ <==文件属主是usr用户,属组是 root用户
ls -lr testdir <==查看testdir目录下所有文件及其属性
total 0
-rw-r–r– 1 usr root 0 2009-10-23 10:38 test1.txt
-rw-r–r– 1 usr root 0 2009-10-23 10:38 test2.txt
-rw-r–r– 1 usr root 0 2009-10-23 10:38 test3.txt
chown -R test:test testdir/ <==修改testdir及它的下级目录和所有文件到新的用户和用户组
ls -l testdir
drwxr-xr-x 2 test test 0 2009-10-23 10:38 testdir/
ls -lr testdir
total 0
-rw-r–r– 1 test test 0 2009-10-23 10:38 test1.txt
-rw-r–r– 1 test test 0 2009-10-23 10:38 test2.txt
-rw-r–r– 1 test test 0 2009-10-23 10:38 test3.txt
参考博客 Linux chown命令详解使用格式和方法
每天一个linux命令:chown
网友评论