从root用户使用composer时设置包的所有者/用户

时间:2015-02-15 09:39:18

标签: composer-php

我在我的服务器上全局安装了作曲家。

我在这台服务器上有几个不同的域/帐户。 作为root我可以ssh到服务器上,可以使用composer来更新包。

然而,每个包都有root:root的所有者和用户。 当我以帐户所有者身份登录时,如果我需要更改包内的某些内容,则我没有足够的权限访问任何包。

有没有办法运行作曲家更新并将用户/所有者设置为帐户持有者,而不是在每个帐户级别设置ssh?

非常感谢。

1 个答案:

答案 0 :(得分:2)

我说如果你需要root用户来部署软件,那么你做错了。

Composer不是部署工具,它是一个依赖管理器。这就是它的作用:它将下载所需的软件包并将它们解压缩到文件系统 - 作为运行安装命令的用户帐户。

如果你想改变它,你有几个选择,其中包括:

  • su
  • sudo
  • 在目录(chmod g+s
  • 上设置组ID标志
  • 收集服务器外的文件,并通过SCP / SFTP / FTPS将其作为正确的用户放置到位
  • 不改变依赖关系'代码作为该用户,只有配置文件
  • ......等。