我想阻止用户修改文件,但我似乎无法使用标准权限使其工作。
文件是
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/
我的目的是防止用户重命名文件,但只要拥有权限,他就可以重命名。
我错过了什么?
文件的权限阻止/允许访问文件。重命名文件并不涉及更改文件本身 - 重命名实际上是对目录的更改。
尝试将目录权限更改为:
dr-xr-xr-x
看看会发生什么。
如果文件是由 root 创建的纯文本文件:
echo 'foo' > /tmp/file.txt
您的
ls -l
是:
-rw-r--r-- root root file.txt
但是在普通用户中,我可以使用
vim
保存或使用 :w!
命令来更改此设置,当发生这种情况时,文件权限将更改为:sed
为什么会这样?
PS:我使用
Debian SID。