我有一个具有以下文件模式位(a+rw
)的文件:
[0] mypc<johndoe>:~>sudo touch /tmp/test
[0] mypc<johndoe>:~>sudo chmod a+rw /tmp/test
[0] mypc<johndoe>:~>ls -l /tmp/test
-rw-rw-rw- 1 root root 0 Mar 13 11:09 /tmp/test
为什么我不能删除文件?
[0] mypc<johndoe>:~>rm /tmp/test
rm: cannot remove '/tmp/test': Operation not permitted
该
/tmp
目录通常使用受限删除标志进行标记,该标志显示为许可字母t
或T
在ls
输出中。限制删除意味着几件事。在一般情况下,它意味着只有文件的所有者,或者
/tmp
它自己的所有者,才能删除/tmp
.您不能删除该文件,因为您不是所有者,即
root
. 尝试rm
使用sudo
您可能忘记的跑步方式。更具体地说,仅对Linux 而言,受限删除标志(在全局可写目录上,例如
/tmp
)还启用了protected_symlinks
、protected_hardlinks
、protected_regular
和protected_fifos
链接到他们不拥有的文件,阻止用户打开他们不拥有的 FIFO,并阻止用户在他们希望创建它们时打开他们不拥有的现有文件。root
当您执行各种其他操作时,例如使用sudo
.有关这些问题的更多信息,例如“ CentOS 6 和 CentOS 7 之间的硬链接权限行为不同”、“更改用户时符号链接无法按预期工作”和“ root 的组权限在 /tmp 中不起作用”。
问题似乎是
/tmp
.https://en.wikipedia.org/wiki/Sticky_bit