用户能够修改root拥有的文件。为什么?

时间:2013-08-27 15:51:32

标签: linux file-permissions

我想阻止用户修改文件,但我似乎无法使用标准权限让它工作。

文件为file.jpg,位于2012/文件夹中。

档案详情:

-r--r--r-- 1 root root 10294 Feb 19  2013 file.jpg

文件夹详细信息:

drwxr-xr-x 2 charly charly 36864 Aug 27 15:38 2012/

我的目的是阻止用户重命名文件,但具有他们能够使用的权限。

我错过了什么?

2 个答案:

答案 0 :(得分:5)

在重命名文件或在同一文件系统中移动文件时,不要更改文件,因为文件实际上是inode(目录中可能有零个,一个或多个文件名)。

重命名文件是相关目录内的操作(​​不在文件本身上)。也许删除对目录的写访问权可能有所帮助(但如果用户拥有该目录,他可以使用chmod再次更改目录上的这些权限)。另请阅读有关目录sticky bit的更多信息。

BTW,用户也可以硬链接同一个文件,即向其添加新文件名。然后每个文件名都引用同一个文件。

答案 1 :(得分:2)

文件的权限阻止/允许访问文件。重命名文件不涉及更改文件本身 - 重命名实际上是对目录的更改

尝试将目录权限更改为:

dr-xr-xr-x

看看会发生什么。