linux 用户可以修改根目录下的文件,为什么?

pjngdqdw  于 2023-11-17  发布在  Linux
关注(0)|答案(2)|浏览(178)

我想阻止用户修改文件,但我似乎不能让它使用标准权限工作。
文件名为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/


我的目的是防止用户重命名文件,但与权限,因为他们是他能够。
我错过了什么?

pes8fvy9

pes8fvy91#

在重命名文件或将其移动到同一个文件系统中时,您不会更改文件,因为文件实际上是一个inode(在目录中可能有零个、一个或多个文件名)。
重命名文件是在相关目录内进行的操作(而不是在文件本身上)。也许删除对目录的写权限可能会有帮助(但是如果用户拥有目录,他可以再次使用chmod更改目录上的这些权限)。阅读更多关于sticky bit的目录。
顺便说一句,用户也可以硬链接到同一个文件,即添加一个新的文件名。然后每个文件名都是相同的文件。

bsxbgnwa

bsxbgnwa2#

对文件的权限禁止/允许访问 * 文件 *。重命名文件并不涉及更改文件本身-重命名实际上是更改 * 目录 *。
尝试将目录权限更改为:

dr-xr-xr-x

字符串
看看会发生什么

相关问题