前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux chgrp和newgrp命令简介【Linux-Command line】

Linux chgrp和newgrp命令简介【Linux-Command line】

作者头像
QRosie
修改2019-11-21 10:46:42
1.2K0
修改2019-11-21 10:46:42
举报
文章被收录于专栏:Opensource翻译专栏

chgrp和newgrp命令可帮助你管理文件,以维护组的所有权。

图片来源:Original photo by Rikki Endsley. CC BY-SA 4.0
图片来源:Original photo by Rikki Endsley. CC BY-SA 4.0

在近期的文章中,我介绍了chown命令,该命令用于修改系统上文件的所有权。 回想一下,所有权是分配给对象的用户和组的组合。 chgrp和newgrp命令为管理需要维护组所有权的文件提供了额外帮助。

使用chgrp

chgrp命令仅更改文件的组所有权。 它与chown:<group>命令相同。 你可以使用:

或:

递归

在命令行和脚本中,chgrp的某些其他参数可能有用。 就像许多其他Linux命令一样,chgrp具有递归参数“-R”。 你需要用它对目录及其内容进行递归操作,如下文所示。 我添加了-v(verbose参数,chgrp可以告诉我它在做什么:

Reference

更改文件上的组以匹配特定配置时,或你不确定该组时(例如运行脚本),可以使用参考文件(--reference = RFILE)。 可复制另一个文件的组(RFILE),称为参考文件。 例如,要撤消上面所做的更改(请注意,点[.]指向当前工作目录):

报告变更

大多数命令都有用于控制其输出的参数。 最常见的是“-v”,可启用详细情况,而chgrp命令具有详细模式。 它还具有“-c(--changes)”参数,该参数指示chgrp仅在进行更改时报告。 Chgrp仍会报告其他内容,例如是否不允许进行操作。

参数“-f”(--silent,--quiet)用于禁止显示大多数错误消息。 我将在下一部分中使用此参数和“-c”,以便仅显示实际更改。

保留根

Linux文件系统的根(/)应该受到高度重视。 如果在此级别上犯了一个命令错误,那么后果可能不堪设想,使系统完全无法使用。 尤其是在运行进行任何类型的更改(或更糟糕的是删除)的递归命令时。 chgrp命令具有一个可用于保护和保留根的参数。 参数是“--preserve-root”。 如果将此参数与根目录上的递归chgrp命令一起使用,则什么也不会发生,而是出现一条消息:

不与递归结合使用时,该选项无效。 但是,如果该命令由root用户运行,则“/”的权限将更改,但其中的其他文件或目录的权限则不会更改:

令人惊讶的是,这似乎不是默认参数。 选项“--no-preserve-root”是默认的。 如果你在不带“ preserve”选项的情况下运行上述命令,则它将默认为“无保留”模式,并可能更改了不应更改的文件的权限:

关于newgrp

newgrp命令允许用户覆盖当前的主组。 当你在所有文件必须具有相同组所有权的目录中工作时,newgrp会给你带来便利。 假设你的Intranet服务器上有一个名为share的目录,不同的团队在该目录中存储营销照片。 该组为share。 当不同的用户将文件放入目录时,文件的主要组可能会变得混乱。 每当添加新文件时,都可以通过将组设置为share来运行chgrp以纠正混淆情况:

我在有关chmod命令的文章中介绍了setgid模式,这是解决此问题的一种方法。 但是,假设由于某种原因未设置setgid位, newgrp命令在这种情况下将大显身手。 在任何用户将文件放入共享目录之前,它们可以运行newgrp share命令。 这会使其primary组切换为share,因此他们放入目录中的所有文件将自动具有组share,而不是用户的primary组。 完成操作后,用户可以(如下例)切换回常规primary组:

结论

理解如何管理用户,组和权限是至关重要的。 最好了解一些替代方法来解决潜在问题,因为并非所有环境都以相同的方式设置。

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系外文翻译前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用chgrp
    • 递归
      • Reference
        • 报告变更
          • 保留根
          • 关于newgrp
          • 结论
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档