首先声明一下,我是 Ubuntu 和 Linux 的新手。
我希望能够使用 WinSCP 中的 sftp 远程维护我 Ubuntu 服务器中的网站。安装后,该文件夹/var/www/html
最初归 root 和组 root 所有。因此,我将组更改为我创建的名为 developers 的组,并将我自己的 ID 作为 developers 组的成员。
我认为,任何人都可以读取和执行文件夹中的 html 文件,而只有所有者 (root) 和组 (开发人员) 才有权写入文件夹。事实上,这正是文件属性对话框中显示的内容chmod
。705
然后我以我自己的身份登录到 Ubuntu 服务器,如果我尝试创建或更新文件夹 html 内的文件,则会出现权限错误。
然后,我对文件夹进行了chmod
修改,允许任何人进行写访问,并且我能够使用自己的用户权限在 html 中创建和更新。然后,我使用 WinSCP 进行了远程测试,发现我也可以远程完成任何更改。 777
html
显然,我不理解 Linux 版本的用户和组权限。我已阅读了所有能找到的关于该主题的资料,但还是看不出我错在哪里。
任何帮助将不胜感激。
如果您有任何疑问,请随时询问我可能因无知而遗漏的其他信息。
答案1
您想要的八进制权限(授予所有者和组在此处读取和写入文件以及进入/搜索/统计目录的权限)是775
。
您设置的权限,705
将所有权限授予所有者,对该组没有任何权限,为其他人阅读并执行。
您可能还想添加 setgid 位,以便在此处创建的文件从父目录继承相同的组所有权。为此,请2
在字符串开头添加
sudo chmod 2775 /var/www/html
查看修改模式一些背景的标签信息