我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更改它应该允许我第一次???
答案 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
。