我按照此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 group的用户,我应该获得他们持有的任何权限。
请帮助解决此问题
答案 0 :(得分:3)
我怀疑您的问题是用户帐户有多个组,而默认组不是具有该文件夹写入权限的组。
虽然Linux允许您的用户访问多个组,但它不能同时访问所有组。以下是一些解决此问题的方法:
外壳中的新组
要在启动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
答案 1 :(得分:2)
答案 2 :(得分:0)
对我来说,问题与joomla配置有关。您需要更改上载文件的默认权限。此链接可以为您提供帮助:http://forum.joomla.org/viewtopic.php?t=286584
答案 3 :(得分:0)
有两个相对简单的选项,它们都不应涉及www-data - 您不希望Web服务器对您的内容进行不必要的写访问。
1)只需将/ var / www的所有者用于编辑文件的用户ID。
2)建立一个新组,使其成为您的一个辅助组,并使/ var / www group-writable + setgid(chmod g + s)成为新组。 setgid目录中的新文件将其组设置为共享组。