运行sudo ps -ef时在结构中产生奇怪的效果

时间:2012-11-20 14:16:51

标签: python ssh fabric

我的系统设置为允许某个用户在没有密码提示的情况下运行sudo命令。这已经很好地工作了很长时间。现在我遇到了一个非常不寻常的问题,某些命令提示输入sudo密码。我认为这是因为fabric正在解析输出并决定在远端请求密码。

但实际上,这是错误的!没有密码被请求(我可以使用ssh运行相同的命令,不提示密码)。我至少认为命令ps -ef是有问题的,我认为是因为正在产生的输出类型。

实际上,命令ps -ef也显示了结构用于在远端运行此命令的命令,我认为这会使结构混乱。可能认为输出中的sudo意味着需要密码。这是阻止结构提示输入密码的输出部分:

[aaaa@bbbb:22] out: aaaa      9917  9790  0 15:10 ?        00:00:00 sshd: aaaa@notty 
[aaaa@bbbb:22] out: root      9918  9917  0 15:10 ?        00:00:00 sudo -S -p sudo password: 

是否可以告诉fabric no解析输出,或者至少不提示输入密码?

1 个答案:

答案 0 :(得分:0)

在调用命令之前尝试将shell设置为false。

env.shell = False