相关疑难解决方法(0)

目录的只写权限不允许重命名(移动)里面的文件?

事实上,我想问一个更一般的问题——“目录的写权限究竟允许你做什么?” - 但让我们用一个具体的例子来解决它。

这是一个很长的问题,如果您急于阅读粗体- 它应该涵盖主要部分。

不同的来源(好问题,还有一个grymoire 的)对目录权限的描述类似于以下内容:

r, read -- 读取目录的内容(里面的文件名)

w, write -- 改变目录的属性(例如修改时间)并在里面创建/重命名/删除条目

x, search -- 访问里面的文件,你可以访问文件的inode,因此你可以访问它的实际内容

我的问题是关于w. 它允许您访问哪些目录的属性?我不能创建/重命名/删除文件,只写权限的目录里:我做一个目录(tdir/),并在文件中,( ),afilechmod -x-r tdir/,,mv tdir/afile tdir/af -所有的失败,并允许拒绝,除非我设置权限的目录,以及.rm tdir/afiletouch tdir/newfilex

并且x单独不会授予您在目录中创建/重命名/删除文件的权限。

为了做到这一点,您需要xw

但是只touch tdir更改目录的修改时间w

我会以这种方式重新表述上面的来源以符合问题:目录r允许您查看里面的文件名,但不能访问实际文件(到 inode);x允许您访问文件的 inode(这意味着您可以查看它们的权限,并根据它可以访问内容),但您仍然无法更改目录中的任何内容;目录实际上是某种文件,要更改其中的某些内容,您需要获得w许可。

因此,当您更改目录中的某些内容时,您需要w获得许可。如果您的更改需要目录中文件的 inode - 您也需要 …

filesystems permissions directory

7
推荐指数
1
解决办法
3705
查看次数

标签 统计

directory ×1

filesystems ×1

permissions ×1