我希望能够在 CodeDeploy 上设置“部署”用户,而不是以 root 身份执行所有操作。可能吗?
问问题
632 次
1 回答
2
除了来自 CodeDeploy 服务或代理的 root 之外,没有其他选项可以作为任何其他用户运行。安装软件通常需要 root 权限,并且至少需要像其他用户通常那样运行进程。
如果您想限制代理的有效权限,您可能需要查看 SElinux。您可以使用 SElinux 来限制主机代理的可执行文件的访问。如果您通常选择使用 SElinux,主机代理能够在文件上设置上下文。
毕竟,如果您真的想以其他用户身份运行 CodeDeploy 代理,请尝试以下操作:
- 正常安装主机代理。
- 停止主机代理。
- 删除更新程序 cron 选项卡文件,这样它就不会以 root 身份重新启动代理。您必须手动检查和更新代理,因为所有出售的版本都假定您希望以 root 身份运行。
- 将所有内容的所有权更改为
/opt/codedeploy-agent/
您要运行的用户。 - 运行
/opt/codedeploy-agent/bin/codedeploy-agent start
。
您还需要确保不要尝试在您的应用规范中指定以用户身份运行或文件权限,因为代理可能无法执行这些操作,但无论如何它都会尝试执行。
于 2015-03-17T23:44:38.503 回答