没有 u 权限的用户可以读取、更改权限和删除文件吗?为什么?

没有 u 权限的用户可以读取、更改权限和删除文件吗?为什么?

所以我创建了一个文件并赋予它以下权限。 chmod u-rwx, g=rw, o=rx file

用户现在无法读取该文件,因为他没有任何读取权限,对吧?

我可以删除该文件,为什么呢? [编辑:正如穆鲁所指出的,这部分问题已得到解答这里]

但我仍然可以更改文件的权限。我可以给自己许可并阅读它。这是为什么?

谢谢你!

答案1

在unix风格的文件权限中,能够更改权限是成为文件所有者不可分割的一部分:如果您是所有者,则可以随时更改权限 - 如果不是,则无法更改权限完全没有权限。无论实际权限是什么,这都是正确的。

作为文件的所有者,您可以撤销所有 u 权限,并且由于最具体的权限集优先,因此即使您所属的组可以读取该文件,您也无法读取该文件,或者甚至对其他人。

删除文件不会对文件本身进行操作,而是对文件所在的目录进行操作:如果您对目录具有写访问权限,则您将能够删除其中的任何文件,除非粘滞位 (+t) 设置为目录;目录上的粘性位将添加额外的限制,防止任何人删除他们不拥有的内容。这通常用在用于临时文件的全局可写目录中,例如/tmp/var/tmp

通常,如果您不是文件的所有者,但具有对该文件的读访问权限,并且对该文件所在的目录具有写访问权限,您将能够通过复制该文件、删除该文件来间接获得该文件的所有权。原始文件并将副本重命名为与原始文件具有相同的名称。

相关内容