我有一些freebsd服务器,并且没有sudo。但我想用root自动运行一些命令,就像下面的命令:Fabric:以root身份自动运行命令
def autodeploy(url):
with cd('/tmp'):
if not exists('releasetar.sh'):
put('/tmp/releasetar.sh', 'releasetar.sh', mode=0644)
run("wget '{}'".format(url))
run('su - -m -c "cd /tmp && bash /tmp/releasetar.sh"')
的su
与-c
选项致力于Linux,但在FreeBSD上并没有奏效。我该如何解决这个问题?我希望你的解决方案既可以在linux和freebsd上工作。谢谢您的回答~~
对不起,我发现这不起作用,当我是freebsd上的普通用户时,它不会自动更改为root或要求我输入root密码。 – zjhui
对不起,我没有freebsd机器,所以无法验证。也许看看http://docs.fabfile.org/en/latest/faq.html它提到了freebsd的一些注意事项 – Greg