我关注了这个link更改组/用户权限以将我自己添加到 www-data 组 但我仍然无法编辑/var/www 中的内容,特别是上传的内容。
这是我的开发环境,我不想每次上传时都去 chmod/var/www/。
虽然将内容保存在/var/www 下,但更改/var/www 目录权限以能够直接从 IDE 编辑内容的步骤是什么
我的登录帐户用户名和组名是debianaut
:
groups www-data
www-data : www-data debianaut
groups debianaut
debianaut : debianaut www-data
我在进行这些更改后登录/退出。看起来很直接,如果我是 cretain 组的用户,我应该获得他们拥有的任何权限。
请帮忙解决这个问题
最佳答案
我怀疑您的问题是用户帐户有多个组,而默认组不是对该文件夹具有写权限的组。
虽然 Linux 允许您的用户访问多个组,但它不会同时提供对所有组的访问权限。以下是解决此问题的一些选项:
- 更改在 shell 中运行时使用的组
- 更改用户的默认登录组
- 使用 ACL
外壳中的新组
为了在启动 shell 后以不同的用户身份操作,请使用 newgrp
.
更改默认组
为了改变用户的默认组,编辑/etc/passwd
,或使用一个命令来完成这项工作(不确定是哪个命令,它可能因发行版而异)。
ACL
您可能更喜欢使用 ACL。请参阅 setfacl
的手册页和 getfacl
. ACL(访问控制列表)是扩展权限。并非所有 Linux 系统都支持它们,但如果您的 Debian 系统不支持它们,我会感到惊讶。以下应将用户 debianaut 的读写执行权限添加到所有 /var/www
:
setfacl -R -m u:debianaut:rwx /var/www
顺便说一下 - 你可以检查正在运行的进程(比如你的 IDE)的组 ID,使用 ps -o gid -p <pid>
.
继承 ACL
关注帖子here导致继承 ACL 的答案。
答案叫做default
手册页中的 ACL。以下将 denianaut 的 ACL 设置为在/var/www 中创建的文件的默认值:
setfacl -R -d -m u:debianaut:rwx /var/www
关于linux - IDE如何使/var/www内容可编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18228351/