首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Capifony setfacl权限:“不允许操作”

Capifony setfacl权限:“不允许操作”
EN

Stack Overflow用户
提问于 2013-02-06 06:54:43
回答 3查看 5.3K关注 0票数 4

我有一个用户didongo (用户和组didongo)和nginx服务器(用户和组www-data)。我已经将Capifony设置为以didongo用户身份登录:第一次部署时,setfacl命令工作正常(当logs文件夹为空时)。但在由nginx提供服务的web应用程序生成了一些日志(prod.log)之后,下一次部署就会失败,并出现setfacl错误。

我确信我在用户和web服务器之间的权限上犯了一个noob错误,但我看不出是什么错误。我发现didongo不应该能够更改他没有权限的文件的权限。但是,我应该如何配置服务器或Capifony呢?

谢谢!

相关(希望如此) Capifony deploy.rb配置:

代码语言:javascript
复制
set :user,                  "didongo"
set :webserver_user,        "www-data"
set :permission_method,     :acl
set :use_set_permissions,   true

set :shared_children,       [app_path + "/logs", web_path + "/uploads", "vendor"]
set :writable_dirs,         ["app/cache", "app/logs"]

这是Capifony错误:

代码语言:javascript
复制
$ setfacl -R -m u:didongo:rwx -m u:www-data:rwx /home/didongo/staging/shared/app/logs
setfacl: /home/didongo/staging/shared/app/logs/prod.log: Operation not permitted

ACL上的一些数据:

代码语言:javascript
复制
$ getfacl app/logs

# file: logs
# owner: didongo
# group: didongo
user::rwx
user:www-data:rwx
user:didongo:rwx
group::rwx
mask::rwx
other::r-x
default:user::rwx
default:user:www-data:rwx
default:user:didongo:rwx
default:group::rwx
default:mask::rwx
default:other::r-x

# file: logs/prod.log
# owner: www-data
# group: www-data
user::rw-
user:www-data:rwx               #effective:rw-
user:didongo:rwx                #effective:rw-
group::rwx                      #effective:rw-
mask::rw-
other::r--
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-02-07 20:16:08

最后,我用与用户相同的权限创建了不同的PHP-FPM池。通过这种方式,我可以将不同的用户彼此分开。作为一个额外的好处,deploy.rb得到了简化。

票数 0
EN

Stack Overflow用户

发布于 2013-11-05 16:42:28

使用sudo尝试一次,之后就不需要使用sudo了

代码语言:javascript
复制
sudo sh -c 'setfacl -R -m u:didongo:rwX -m u:www-data:rwX /home/didongo/staging/shared/app/logs'

因为您需要设置x+权限,所以请阅读此What is trailing Plus indicates

票数 3
EN

Stack Overflow用户

发布于 2013-03-16 16:12:29

这里的问题是,prod.log文件是自动创建的,所以它的所有者是www-data。Capifony以didongo用户身份运行部署。一个用户不能对另一个所有者的文件执行setfacl

因此,只需将didongo添加到组www-datasudo adduser didongo www-data

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14718533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档