扫码关注官方订阅号
对Linux不太熟悉,请大家帮忙下
环境: apache用户为www-data ftp用户为ftp-user 网站目录为/www,权限为777
问题: www-data用户在/www目录下创建的目录和文件,ftp用户都无法操作,反之亦然。
要求: 两个用户都能操作对方在/www目录下创建的目录及文件!
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
找到问题了,首先安装acl,然后执行以下语句即可
setfacl -R -m u:ftp-user:rwx /www setfacl -R -m --set u:ftp-user:rwx /www
大致由于掩码的存在,新创建的目录和文件的权限并不是777的,一般要再次执行一次chmod 777 directory -r 爪机码字,有待确认。
chmod 777 directory -r
不知道你在www目录下创建的目录权限是怎样的,你可以将这两个账号加到相同的组。
如果是中间缓存文件的话,本来由一方生成的不对另一方开放也很正常; 如果硬要打破这个规则的话,可以试试用inotify-tools监视文件写入,一旦有文件生成或修改,就对其执行chmod 777操作
inotify-tools
chmod 777
两个user都可以在/WWW下创建文件和目录,那肯定/WWW的权限设制肯定没有问题了,估计是umask的设置的问题了。可以试一下命令umask,有可能系统默认的为0022,这样会禁止同组的成员互相编辑对方的文件,可以改为umask 0002就可以了。
问题不在于目录权限,而是创建文件时的文件权限是什么样子的,和umask有关
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
找到问题了,首先安装acl,然后执行以下语句即可
大致由于掩码的存在,新创建的目录和文件的权限并不是777的,一般要再次执行一次
chmod 777 directory -r爪机码字,有待确认。
不知道你在www目录下创建的目录权限是怎样的,你可以将这两个账号加到相同的组。
如果是中间缓存文件的话,本来由一方生成的不对另一方开放也很正常;
如果硬要打破这个规则的话,可以试试用
inotify-tools监视文件写入,一旦有文件生成或修改,就对其执行chmod 777操作两个user都可以在/WWW下创建文件和目录,那肯定/WWW的权限设制肯定没有问题了,估计是umask的设置的问题了。可以试一下命令umask,有可能系统默认的为0022,这样会禁止同组的成员互相编辑对方的文件,可以改为umask 0002就可以了。
问题不在于目录权限,而是创建文件时的文件权限是什么样子的,和umask有关