虚拟主机域名注册-常见问题服务器知识 → 操作系统

Linux中更改组权限的Chgrp命令用法

  chgrp命令的语法

  更改文件所属组的语法非常简单。只需调用chgrp命令,然后在对象名称之后定义组名称即可。

  $ chgrp OPTION group_name /path/to/file or directory

  group_name属性表示文件或目录将获取的新组。此外,您可以指定GID(组ID)而不是组名。在这种情况下,您需要在GID后面附加一个加号(+)。

  使用chgrp命令更改文件组

  在本节中,我们将研究如何更改文件的组所有权。在使用chgrp命令更改文件组之前,建议先验证该文件所属的当前组。使用ls命令打印文件的文件许可权很容易实现,如下所示:

  $ ls -l

  下面的示例打印出settings.pydocs目录内一个文件的文件许可权。

  从上面的输出中,该文件属于用户'Winnie'和组'Winnie'。例如,要将文件组从“ Winnie”组更改为“ linoxide”组,请运行chgrp命令,如下所示:

  $ chgrp linoxide settings.py

  但是,在大多数情况下,以普通用户身份更改文件或目录的组时,将遇到chgrp operation not permitted如下图所示的错误。该错误表明用户没有足够的权限来更改文件的组所有权。

  解决此问题的方法是将普通用户添加到sudoers组中,并调用sudo命令,如下所示:

  $ sudo chgrp linoxide settings.py

  从上面的输出中,我们可以看到在调用sudo命令并提交密码后,已成功将组更改为“ linoxide”。

  此外,使用chgrp命令时,您可以指定多个文件作为参数,如下所示:

  $ sudo chgrp group_name file_1 file_2 file_3

  在下面的例子中,我们有3个文件:settings.py、file1.txt和file2.txt都属于组 "Winnie"。现在让我们把组的所有权改为'linoxide'。 语法将是:

  $ sudo chgrp linoxide settings.py file1.txt file2.txt

  递归更改组所有权

  有时,您可能需要递归更改目录的所有文件和子目录的组。要递归更改组名,请使用-R以下语法中所示的标志。

  $ sudo chgrp group-name directory

  例如,要将/var/www/html/nextcloud 目录及其内容的所有权更改为www-data group,请运行以下命令:

  $ sudo chgrp -R www-data /var/www/html/nextcloud

  更改符号链接的组所有权

  使用递归选项不会遍历符号链接,因此,符号链接将保留其组所有权。要将组所有权应用于符号链接,请传递-h参数,如下所示:

  $ sudo chgrp -Rh www-data /var/www/html/nextcloud

  在本教程中,我们向您介绍了chgrpLinux中的命令。尽管可以使用chown命令实现相同的功能,但是chgrp命令提供了一种更简单的方法。

  有人可能会问,当chown命令存在时,为什么我们会有chgrp。Chgrp代码构建的年代更早,chown最初无法设置组。

  注意:chown :group在许多平台上,仅限于更改组的名称仍然不是可移植的或标准的。




免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:bkook@qq.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
【 双击滚屏 】 【 推荐朋友 】 【 收藏 】 【 打印 】 【 关闭 】 【 字体: 】 
上一篇:Ubuntu 20.04服务器中安装使用Webmin方法
下一篇:Linux如何查找活动的SSH连接
  >> 相关文章
没有相关文章。
0

在线
客服

在线客服服务时间:9:00-18:00

客服
热线

19899115815
7*24小时客服服务热线

关注
微信

关注官方微信
顶部