Linux 中使用 chgrp(更改组所有权)命令

在 Linux 中,每个文件和目录都与一个用户和组所有者相关联,以决定哪个用户和组可以读取、写入和执行文件和目录。 chgrp 命令用于更改 Linux 上文件和目录的组所有权。 与 chown 命令不同,chgrp 命令只要求我们指定组名。

在这篇文章中,我们将向我们展示 Linux 中使用 chgrp 命令来处理各种系统管理情况。

先决条件

  • 在 云平台上运行 Linux 的服务器
  • 在我们的服务器上配置的 root 密码

创建 云服务器

首先,登录到我们的 云服务器。 创建一个新服务器,选择任何具有至少 1GB RAM 的 Linux 操作系统。 通过 SSH 连接到我们的云服务器并使用页面顶部突出显示的凭据登录。

chgrp 命令的基本语法

chgrp 命令的基本语法如下所示:

chgrp [option] groupname file/directory

每个选项的简要说明如下所示:

  • -c 仅在进行更改后显示详细输出。
  • -f 抑制大多数错误消息
  • -v 显示每个已处理文件的诊断信息。
  • -R 递归地对文件和目录应用所有权。
  • –help 用于显示帮助信息。

显示文件的组所有权

在更改任何文件和目录的组所有权之前,了解如何显示任何文件和目录的现有组所有权非常重要。

我们可以使用 ls -l 命令显示任何文件和目录的现有组所有权:

ls -l hitesh.txt

这将显示文件 hitesh.txt 的组所有权,如下所示:

-rw-rw-r-- 1 root vyom 0 Mar 15 09:48 hitesh.txt

如我们所见,vyom 是文件 hitesh.txt 的组所有者。

更改目录的组所有权

我们可以使用以下语法更改目录的组所有权:

chgrp groupname directory-name

例如,要将目录 /var/www 的组所有权更改为 www-data 组,请运行以下命令:

chgrp www-data /var/www

我们可以在 chgrp 命令中使用 -R 标志来更改指定目录的组所有权,包括所有子目录:

chgrp -R www-data /var/www

更改文件的组所有权

使用以下语法更改文件的组所有权:

chgrp groupname file-name

例如,要将文件 hitesh.txt 的组所有权更改为 sudo 组,请运行以下命令:

chgrp sudo hitesh.txt

如果要更改多个文件的组所有权,请运行以下命令:

chgrp sudo file1 file2 file3

从参考文件复制组所有权

chgrp 命令还允许我们从参考文件中复制组所有权信息。 复制组所有权的基本语法如下所示:

chgrp [OPTION] --reference=[RFILE_NAME] [FILE_NAME]

例如,要将组所有权从名为 hitesh.txt 的文件复制到 vyom.txt,请运行以下命令:

chgrp --reference=hitesh.txt vyom.txt

显示 chgrp 执行信息

我们可以使用带有 -c 选项的 chgrp 命令来显示 chgrp 对每个指定文件所做的更改列表。

例如,要查看 /var/www/html 目录中发生的更改,请运行以下命令:

chgrp -c -R sudo /var/www/html

我们应该在以下输出中看到 chgrp 命令所做的所有更改:

changed group of '/var/www/html/index.html' from root to sudo
changed group of '/var/www/html/index.nginx-debian.html' from root to sudo
changed group of '/var/www/html/example.com/index.html' from root to sudo
changed group of '/var/www/html/example.com' from www-data to sudo
changed group of '/var/www/html' from root to sudo

本文记录了,如何使用 chgrp 命令来更改文件或目录的组所有权。 我们还在 chgrp 命令中使用了一些选项来自定义流程。 希望这篇文章能在多用户环境中帮助我们。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论