我有一个经过fruit
许可调用的文件夹777
,其所有者是fruit
.
我想apple
在该fruit
文件夹下创建一个名为的文件夹。但我想将此文件夹的所有者设置为apple
,而不是fruit
。
但是,我只有apple
用户的访问权限。
由于水果文件夹设置为777
,是否可以使用 来执行此操作chgrp
?
答案1
chgrp
是“更改文件或目录的组所有权”。因此,您无法使用该命令更改用户所有权(chown
而是使用它,这可以更改用户和集团所有权)
如果您的文件夹fruit
处于 777 模式,显然任何人都可以在其中创建子文件夹。该子文件夹将由创建它的用户拥有,因此在您的情况下,该子文件夹将由 拥有apple
。
现在,如果您的用户apple
想要更改其某个文件的组所有权,他必须是该组的成员。看:
$ id apple
uid=500(apple) gid=500(apple) groupes=500(apple,fruit,banana)
然后用户apple
可以将其文件或文件夹的组所有权更改为apple
,fruit
或banana
但不能更改为,cherry
因为他不是该组的成员cherry
。
答案2
chown
将所有权转移给其他用户时,该命令需要 root 权限。chgrp
无关紧要,因为它只影响组,而不影响用户。
如果某人不愿意,您不能强迫他拿走您的文件。如果你是 root 或拥有 root 权限,那么你就是指挥官,你可以做任何你想做的事。
作为解决方法,您可以创建一个同时拥有这两个用户的组,并将所有权授予该组,以便任何用户现在都拥有该组的所有权。