![在目录中操作时更改组 ID](https://linux22.com/image/1435616/%E5%9C%A8%E7%9B%AE%E5%BD%95%E4%B8%AD%E6%93%8D%E4%BD%9C%E6%97%B6%E6%9B%B4%E6%94%B9%E7%BB%84%20ID.png)
我有一个目录shared
,其中属于组的人common
有rwx
权限进入。并且用户john
$> id john
uid=1000(john)gid=1000(john)groups=1000(john),10(common)
john
如果属于该组common
且其所在组的用户newgrp
在目录内操作时能够自动更改其组(使用命令隐式更改),那就太好了shared
。
像这样:
john $> pwd
/home/john
john $> id
uid=1000(john)gid=1000(john)groups=1000(john),10(common) # gid is john
john $> ls -ld /shared
rwxrwx--- root common ... /shared/ # here shared is part group common
john $> cd /shared
john $> id
uid=1000(john)gid=10(common)groups=1000(john),10(common) # gid is common
john $> cd ~
john $> id
uid=1000(john)gid=1000(john)groups=1000(john),10(common) # gid is john
这样,用户就可以像对待自己的文件一样对文件进行操作。>
答案1
我建议对目录执行 chmod 以添加 SGID 位。
chmod g+s directory
所发生的情况是,任何创建的文件都会自动被分配到目录的组。