【发布时间】:2011-12-09 12:47:12
【问题描述】:
我正在使用 Fabric 在远程服务器上启动命令。
我想以不同的用户身份启动这个命令(既不是连接的也不是根用户)。
def colstat():
run('python manage.py collectstatic --noinput')
尝试
def colstat():
sudo('-u www-data python manage.py collectstatic --noinput')
显然这不起作用,因为 -u 将被视为命令而不是 sudo 的选项
out: /bin/bash: -u : 找不到命令
(www-data 是应该运行该命令的用户)
如何使用 www-data 从 Fabric 运行我的命令?
【问题讨论】:
-
值得注意的是,我认为应用程序不应该需要 sudo 权限。我认为我们应该始终能够处理 ACL 之类的东西。