组权限但无法访问文件?

时间:2015-03-16 14:34:19

标签: linux file permissions edit sftp

我sftp(ed)一个简单的文本文件,从Windows机器到我的linux机器上的主目录,这是它拥有的文件权限....

tom@bellmachine-6745:~$
----rwx--- 1 tom tom 6 Mar 16 12:45 redtest.txt

它说文件属于组汤姆 它说汤姆拥有的档案 我在tom下运行终端

但是触摸redtest.txt给了我一个“许可被拒绝” vi redtest.txt给了我一个“许可被拒绝”为什么?

我只能在我被允许通过文件执行以下操作时进行编辑.... chmod 670 redtest.txt

我拥有该文件 我是汤姆 汤姆是汤姆的成员 好的,只有访问这个文件的组tom成员,所以为什么我要做那些chmod更改它应该允许我第一次???

3 个答案:

答案 0 :(得分:1)

因为UNIX权限的工作原理如下:如果您是该文件的所有者,它会查看所有者权限---这样就会被拒绝。如果该文件归其他人所有,例如jane和jane将成为汤姆组,jane将能够访问它。如果当前用户不是文件的所有者(tom),也不是他在组tom中,则其他用户的权限将适用。

请注意,root用户(使用UID 0)会忽略权限,并且他也能够访问未设置权限的文件(在ls输出中为----------)。

答案 1 :(得分:0)

试试这个: sudo chmod r + w redtest.txt

或做一个chown: chown tom redtest.txt

答案 2 :(得分:0)

用户权限优先于组权限。它可以拥有一个文件,但没有权限。您可以使用

更改权限
chmod u+rwx redtest.txt

如果要更改默认权限设置,请使用umask