读取文件:权限被拒绝

时间:2013-11-21 15:03:53

标签: linux

我已在文件上设置了这些权限:

----r--r-x 1 rick rick       50 Nov 20 18:39 hello_world

现在我尝试用rick组成的用户rick打开文件。

rick@ubuntu:~/Documents$ cat hello_world
cat: hello_world: Permission denied

为什么他不能读它?

2 个答案:

答案 0 :(得分:6)

您的权限现在设置为read仅适用于“群组”和“其他人”。

如评论中所述,用户rick确实属于该组,但重要的是所有者的事实,因此检查的权限是第一列上的权限,恰好是{ {1}},即---。因此,0未被考虑在内。

将权限更改为更正常的内容:)

group

然后你就可以阅读了。权限如下:

chmod 644 hello_world

4 read 2 write 1 execute 表示读取+写入。

答案 1 :(得分:6)

由于访问过程具有用户标识“rick”,因此仅检查 禁止读取的拥有用户权限。只有当访问过程与文件所有者具有相同的用户标识时,内核才会考虑它可能是该文件组的成员。

作为文件的拥有用户运行的任何进程都可以使用chmod系统调用将其权限位设置为他们想要的任何内容,因此拒绝对拥有用户的读取或写入访问是无效的安全性度量,但它仍然可以是一个有用的安全度量。换句话说,您可以使用权限位来防止文件被其拥有的用户意外地破坏,而不是故意