为什么我不是所有者却可以删除 755 文件?

为什么我不是所有者却可以删除 755 文件?

我有这个文件:

$ ls -l  store.sh 
-rwxr-xr-x   1 root apache    117 Feb  5  2016 store.sh

$ id
uid=48(apache) gid=48(apache) groups=48(apache)

我认为我没有编辑此文件的权限,但可以删除和替换该文件。怎么会这样?有人能解释一下这种行为吗?

答案1

您不需要对文件具有写权限即可删除或移动(重命名)文件。您需要对目录具有写权限包含该文件,因为删除或重命名不是对文件的操作,而是对目录的文件列表的操作。因此在这种情况下,该文件的目录可能对apache用户或apache组具有写访问权限。

答案2

删除文件不会修改相关文件,而是会修改父目录,因为它会从目录列表中删除该文件。这也意味着您对该文件的父目录拥有完全权限

相关内容