云网牛站
所在位置:首页 > Linux命令 > 在Linux系统中使用chown命令的示例

在Linux系统中使用chown命令的示例

2019-08-12 09:53:59作者:叶云稿源:云网牛站

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

 

使用常见的chown选项

-c, - 更改类似于详细信息,但仅在进行更改时报告。

-f,-silent,-quiet可以抑制大多数错误消息。

-v,-verbose为每个处理的文件输出诊断信息。

-R,-recursive递归地对文件和目录进行操作。

要查看为即将更改的文件设置的权限,请使用ls实用程序,也可参考不使用ls命令列出目录内容,转而使用替代命令的方法

 

相关Linux chown示例

1、运行文件或目录的长列表:

$ ls -l

在Linux系统中使用chown命令的示例

如你所见,上述文件归用户tech和group tech以及用户jmwang和group jmwang所有。

2、要将configs.txt的用户和组更改为tech,请执行:

# sudo chown tech:tech configs.txt

3、列出文件以显示新的所有权

在Linux系统中使用chown命令的示例

要将frontend.php的用户更改为jmwang并将该组保留为tech:

$ sudo chown jmwang:tech frontend.php

3、列出文件以确认更改

在Linux系统中使用chown命令的示例

要将backend.php的组更改为jmwang,请执行:

$ sudo chown :jmwang backend.php

$ ls -l

在Linux系统中使用chown命令的示例

你可以使用一个文件的权限,并使用-reference选项将它们强加于另一个文件,让我们试试看它是否有效:

$ sudo chown --reference=backend.php frontend.php

$ ls -l

在Linux系统中使用chown命令的示例

到目前为止,我们一直在处理文件,如果你需要一起更改目录的所有权,那么它的所有文件和子目录是什么?chown带有递归功能。

要以递归方式更改目录上的用户和组所有权,只需使用-R选项,你就可以开始使用了,使用与仅添加-R选项的文件相同的命令:

$ sudo chown -R http:httpd /var/www/html/

4、仅更改组所有权:

$ sudo chown -R :httpd /var/www/html/

5、仅更改用户所有权

$ sudo chown -R httpd /var/www/html/  ## 注意没有前导全冒号。

到目前为止,我们已经与文件和目录进行了交互,当我们更改符号链接的所有权时会发生什么?让我们调查并解决它,让我们为configs.txt创建一个符号链接:

$ sudo ln -s configs.txt test.txt

6、列出它们以查看软链接

在Linux系统中使用chown命令的示例

让我们尝试将我们知道的方式更改为test.txt的用户和组所有权给jmwang:

$ sudo chown jmwang:jmwang test.txt

7、查看更改的长列表

在Linux系统中使用chown命令的示例

你会注意到test.txt的所有权没有改变。

为了强制更改符号链接的所有权,请发出-h选项,如下所示:

$ sudo chown -h jmwang:jmwang test.txt

8、查看更改的长列表

在Linux系统中使用chown命令的示例

 

结论

更改文件和目录所有权就像使用chown命令一样简单,它本身的使用就非常直观。我们希望这篇文章能够帮助你更好的理解Linux chown命令。

 

相关主题

clamscan命令_Linux clamscan命令使用详解:用于扫描文件和目录

Linux命令子频道
精选文章
热门文章