文件是使用旧组所有权创建的,即使创建者不再属于旧组

文件是使用旧组所有权创建的,即使创建者不再属于旧组

我目前正在准备 LPIC 1 级考试,并且一直在 VirtualBox 上安装的 CentOS 7 系统上练习用户帐户管理。

首先,以 root 身份创建了一个用户“'与团体'酒吧'并练习更改文件权限。然后我创建了一个新组'某个团体'并向其中添加了用户'foo'。然后我已删除来自组“bar”的用户“foo”。(请注意,我为此使用了“groupmems”命令。)

然后我登录到 foo 的帐户并使用“touch”命令在 foo 的 ~/Documents 目录中创建文件,然后使用“ls -l”命令检查其文件权限。我原以为新文件会显示文件所有权属于“foo somegroup”,但奇怪的是我发现组所有权是仍然与组“酒吧”。

显然我在这里缺少一些基本知识。请帮助我理解这一点。 (如果我说得太冗长了,我很抱歉。)

答案1

这是因为父目录属于旧组。在许多系统上,文件和目录的默认组所有者是其父目录。如果您希望停止这种情况,则必须更改父目录的组所有者。然后您可以使用以下命令更改其所有子目录的组所有者:

chgrp -R desiredgroup parentdirectory

-R 选项使其适用于其所有子项。

答案2

更改用户的组不会更改已分配的组。

~/Documents的那群人foo还在bar

新文件将继承父目录的组所有权。

更改文件组是通过chgrp newgroup文件或目录完成的。

相关内容