![进程(具有给定的 uid/gid)何时可以写入文件(具有给定的用户:组)?](https://linux22.com/image/13399/%E8%BF%9B%E7%A8%8B%EF%BC%88%E5%85%B7%E6%9C%89%E7%BB%99%E5%AE%9A%E7%9A%84%20uid%2Fgid%EF%BC%89%E4%BD%95%E6%97%B6%E5%8F%AF%E4%BB%A5%E5%86%99%E5%85%A5%E6%96%87%E4%BB%B6%EF%BC%88%E5%85%B7%E6%9C%89%E7%BB%99%E5%AE%9A%E7%9A%84%E7%94%A8%E6%88%B7%EF%BC%9A%E7%BB%84%EF%BC%89%EF%BC%9F.png)
我正在寻找一个“逻辑语句”来知道文件何时hello.txt
拥有user1:groupA
can be 书面由 拥有的进程user2:groupB
。
我目前只看到这些情况:
进程可以这样写如果
user2 == user1
(并且文件有u+w
权限)或者如果
groupB == groupA
(和g+w
许可)或者如果是(和许可)
user2
的成员groupA
g+w
或者如果
hello.txt
有o+w
许可(事实上,这
user1
是groupB
does 不是允许写入文件,对吗?)
还有其他情况吗?
示例:如何制作
/var/www/website1/hello.txt user1:groupA rwxrwx---
Apache 进程可写 ( uid:www-data, gid:www-data
)?
我目前看到:任何一个
chgrp www-data hello.txt
(测试:有效)或者
adduser www-data user1
(即添加用户 www-data
到团体 user1
;经测试,有效;需要重新启动 Apache)。
还有其他选择吗?注意:经测试,将用户添加user1
到组www-data
不起作用。
答案1
如果该文件对每个人666
或类似的人都有写权限,则任何进程都可以写入它。
同样,如果进程具有像 一样的强权限root
,它可以更改文件权限然后写入。
但您的案例涵盖了所有常规选项