Linux命令之chown

Posted 苦逼运维

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux命令之chown相关的知识,希望对你有一定的参考价值。

chown [选项] … [OWNER][:[GROUP]] FILE …

chown [选项] … --reference=RFILE FILE …

  chown更改每个给定文件的用户和/或组的所有权。如果仅给出所有者(用户名或用户的数字ID),则该用户成为每个给定文件的所有者,并且不更改文件的组。如果所有者后跟冒号和组名(或组的数字ID),并且它们之间没有空格,则文件的组所有权也会更改。如果所有者后跟冒号但没有组名(或组的数字ID),则该用户将成为文件的所有者,并且文件的组将改为该用户的登录组。如果给出冒号和组名(或组的数字ID),但省略所有者,则只更改文件的组,这种情况下chown与chgrp执行相同功能。如果仅有冒号,或为空,则不更改所有者和组。

(1).选项

-c,--changes 类似verbose,但只有在更改时报告
-f,--silent,--quiet 不列出大多数错误信息
-v,--verbose 为每个处理的文件输出诊断信息
--derference 影响每个符号链接的引用(这是默认值),而不是符号链接本身
-h,--no-dereference 影响符号链接本身而不是任何引用的文件(仅在可以更改符号链接的所有权的系统上有用)
--from=CURRENT_OWNER:CURRENT_GROUP 如果文件当前的所有者和/或组与CURRENT_OWNER和/或CURRENT_GROUP匹配时执行更改。两个都可以省略,省略的属性不需要匹配。
--no-preserve-root 要特别对待’/’(根目录?)(默认)
--preserve-root 无法以’/’(根目录?)递归操作
--reference=RFILE 使用RFILE的所有者和组而不是指定OWNER:GROUP值
--help 打印帮助信息并退出
--version 打印版本信息并退出
-R,--recursive 以递归方式操作文件和目录

当-R选项被指定时,以下选项修改了如何遍历层次结构。如果指定了多个选项,只有最后一个生效。

-H 如果一个命令行的参数是符号链接,遍历它
-L 遍历目录里遇到的每一个符号链接
-P 不要遍历任何符号链接(默认)

(2).实例

 更改文件所有者

[[email protected] ~]# ls -l newDir/Dir/
总用量 0
-rw-r--r--. 1 root root 0 11月  9 15:41 1.txt
-rw-r--r--. 1 root root 0 11月  9 15:41 2.txt
-rw-r--r--. 1 root root 0 11月  9 15:41 3.txt
[[email protected] ~]# chown -v xf newDir/Dir/*    //*表示所有文件
changed ownership of "newDir/Dir/1.txt" from root to xf
changed ownership of "newDir/Dir/2.txt" from root to xf
changed ownership of "newDir/Dir/3.txt" from root to xf
[[email protected] ~]# ls -l newDir/Dir/
总用量 0
-rw-r--r--. 1 xf root 0 11月  9 15:41 1.txt
-rw-r--r--. 1 xf root 0 11月  9 15:41 2.txt
-rw-r--r--. 1 xf root 0 11月  9 15:41 3.txt
[[email protected] ~]# chown -v root newDir/Dir/{1.txt,2.txt}     //多个文件用逗号隔开
changed ownership of "newDir/Dir/1.txt" from xf to root
changed ownership of "newDir/Dir/2.txt" from xf to root
[[email protected] ~]# ls -l newDir/Dir/
总用量 0
-rw-r--r--. 1 root root 0 11月  9 15:41 1.txt
-rw-r--r--. 1 root root 0 11月  9 15:41 2.txt
-rw-r--r--. 1 xf   root 0 11月  9 15:41 3.txt

递归更改文件夹及其下文件的所有者

[[email protected] ~]# ls -l newDir/
总用量 0
drwxr-xr-x. 2 root root 45 11月  9 15:41 Dir
[[email protected] ~]# ls -l newDir/Dir/
总用量 0
-rw-r--r--. 1 root root 0 11月  9 15:41 1.txt
-rw-r--r--. 1 root root 0 11月  9 15:41 2.txt
-rw-r--r--. 1 xf   root 0 11月  9 15:41 3.txt
[[email protected] ~]# chown -vR xf newDir/Dir
changed ownership of "newDir/Dir/1.txt" from root to xf
changed ownership of "newDir/Dir/2.txt" from root to xf
"newDir/Dir/3.txt" 的所有者已保留为xf
changed ownership of "newDir/Dir" from root to xf
[[email protected] ~]# ls -l newDir/
总用量 0
drwxr-xr-x. 2 xf root 45 11月  9 15:41 Dir
[[email protected] ~]# ls -l newDir/Dir/
总用量 0
-rw-r--r--. 1 xf root 0 11月  9 15:41 1.txt
-rw-r--r--. 1 xf root 0 11月  9 15:41 2.txt
-rw-r--r--. 1 xf root 0 11月  9 15:41 3.txt

同时更改文件的所有者和所属组

[[email protected] ~]# ls -l newDir/
总用量 0
drwxr-xr-x. 2 xf root 45 11月  9 15:41 Dir
[[email protected] ~]# ls -l newDir/Dir/
总用量 0
-rw-r--r--. 1 xf root 0 11月  9 15:41 1.txt
-rw-r--r--. 1 xf root 0 11月  9 15:41 2.txt
-rw-r--r--. 1 xf root 0 11月  9 15:41 3.txt
[[email protected] ~]# chown -vR root:xf newDir/Dir
changed ownership of "newDir/Dir/1.txt" from xf:root to root:xf
changed ownership of "newDir/Dir/2.txt" from xf:root to root:xf
changed ownership of "newDir/Dir/3.txt" from xf:root to root:xf
changed ownership of "newDir/Dir" from xf:root to root:xf
[[email protected] ~]# ls -l newDir/
总用量 0
drwxr-xr-x. 2 root xf 45 11月  9 15:41 Dir
[[email protected] ~]# ls -l newDir/Dir/
总用量 0
-rw-r--r--. 1 root xf 0 11月  9 15:41 1.txt
-rw-r--r--. 1 root xf 0 11月  9 15:41 2.txt
-rw-r--r--. 1 root xf 0 11月  9 15:41 3.txt

只更改文件的所属组

[[email protected] ~]# ls -l newDir/
总用量 0
drwxr-xr-x. 2 root xf 45 11月  9 15:41 Dir
[[email protected] ~]# ls -l newDir/Dir/
总用量 0
-rw-r--r--. 1 root xf 0 11月  9 15:41 1.txt
-rw-r--r--. 1 root xf 0 11月  9 15:41 2.txt
-rw-r--r--. 1 root xf 0 11月  9 15:41 3.txt
[[email protected] ~]# chown -vR :root newDir/Dir 
changed ownership of "newDir/Dir/1.txt" from root:xf to :root
changed ownership of "newDir/Dir/2.txt" from root:xf to :root
changed ownership of "newDir/Dir/3.txt" from root:xf to :root
changed ownership of "newDir/Dir" from root:xf to :root
[[email protected] ~]# ls -l newDir/
总用量 0
drwxr-xr-x. 2 root root 45 11月  9 15:41 Dir
[[email protected] ~]# ls -l newDir/Dir/
总用量 0
-rw-r--r--. 1 root root 0 11月  9 15:41 1.txt
-rw-r--r--. 1 root root 0 11月  9 15:41 2.txt
-rw-r--r--. 1 root root 0 11月  9 15:41 3.txt

  

以上是关于Linux命令之chown的主要内容,如果未能解决你的问题,请参考以下文章

Linux命令之chown

Linux之chown

Linux命令之修改文件所有者chown

2018/03/09 每日一个Linux命令 之 chgrp/chown

Linux下权限控制之chmod与chown命令 𗏆

Linux之文件权限属性设置