在 $HOME 中未经许可删除

aat*_*ark 4 filesystem permissions

我经历了一些奇怪的事情:

berni@zero:~$ touch wiki
berni@zero:~$ sudo chown root. wiki
berni@zero:~$ sudo chmod 000 wiki 
berni@zero:~$ ls -l wiki 
---------- 1 root root 0 2010-12-11 15:14 wiki
Run Code Online (Sandbox Code Playgroud)

摘要:我创建了一个文件,没有人应该可以在我的家中访问该文件 (~)

我的用户具有默认的 ubuntu 权限,没有系统调整等。

但是我可以在没有root权限的情况下删除文件!

berni@zero:~$ ls -l wiki
---------- 1 root root 0 2010-12-11 15:20 wiki
berni@zero:~$ rm wiki
rm: remove write-protected regular empty file `wiki'? y
berni@zero:~$ ls -l wiki
ls: cannot access wiki: No such file or directory
berni@zero:~$ 
Run Code Online (Sandbox Code Playgroud)

工作/tmp或任何其他文件夹(!= HOME)。

有谁知道为什么会这样?

Frx*_*rem 7

删除文件不需要对要删除的文件或目录具有任何权限,它需要您在父目录中具有写入权限,并且是文件的所有者或父目录。

例如:

/                   root   755
/foo                user   755
/foo/bar            root   644
Run Code Online (Sandbox Code Playgroud)

您不能在/foo此处删除该目录,即使您是它的所有者,因为您在父目录 ( /) 中没有写权限。/foo/bar不过,您可以删除,因为您确实在目录中拥有写入权限/foo