我目前正在准备 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
文件或目录完成的。