1
32
试着传球
else块如下所示:
|
2
13
实际上,您并没有遇到问题;您误解了Fabric run()和sudo()的工作方式。
下面是一组简单的规则: 1) 如果不需要提示,请使用“run()”。 2) 如果确实需要提示,请使用“sudo()”。(对于需要提示的所有或大多数命令都应该如此,即使所讨论的可执行文件不是Bash或Sudo)。 同样的答案也适用于那些试图在“sudo”下运行命令的人。即使sudoers在某些系统上为当前用户提供了无密码配置,如果使用sudo()而不是run(),则会强制提示(除非结构代码已经包含ENV密码或密钥)。 顺便说一句,《织物》的作者在IRC中回答了我的问题——与你的问题非常相似。不错的家伙,开源的无名英雄之一,因为他坚持他的结构和Paramiko工作。
…在我的测试环境中,总有一个用户名对sudo具有完全无密码的访问权限。打字
|
3
13
您可以使用:
|
4
6
其中user是sudo用户,some\ u command是要使用fabric运行的命令,然后在fabric脚本上运行sudo it with shell=False:
这对我有用 |
5
2
在你的
|
6
1
但我在尝试将graphite fabric安装到ec2ami时发现了这个问题。Fabric不断提示输入根密码。 最后的诀窍是将ssh私钥文件传递给fabric。
|
7
1
您还可以对多台计算机使用密码:
|
8
0
answer 令人困惑。
支持的实现方法是使用
我的使用示例:
|
user2066480 · 为什么sudo-H需要一个额外的命令? 6 年前 |
Cassie · sudo:需要密码和剧本[副本] 6 年前 |
User007 · pip库在sudo中不可见 6 年前 |
user8003788 · 由于依赖关系,无法升级R 7 年前 |