当我运行fab
时,它似乎在paramiko依赖项上失败:
Traceback (most recent call last):
File "/usr/bin/fab", line 5, in <module>
from pkg_resources import load_entry_point
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 2655, in <module>
working_set.require(__requires__)
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 648, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 546, in resolve
raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: paramiko>=1.10
我正在运行64位Oracle Linux 6.5(相当于RHEL 6.5或CentOS 6.5)。我使用pip install fabric
安装了Fabric并安装了pip:
从1.14开始&gt; 1.10,我不明白为什么我会失去依赖。这是Fabric 1.9.0中的错误吗?
答案 0 :(得分:24)
我有同样的问题。我解决了卸载结构并重新安装1.8.1:
sudo pip uninstall fabric
sudo pip install fabric==1.8.1
答案 1 :(得分:17)
我通过卸载fabric和paramiko,重新安装paramiko 1.10然后安装fabric
解决了这个问题sudo pip uninstall fabric paramiko
sudo pip install paramiko==1.10
sudo pip install fabric
如果我有更多时间,我会慢慢增加paramiko的发布数量,以找出天花板的位置。我猜测1.13,因为这似乎是一个已知的错误。
https://github.com/fabric/fabric/issues/1105
最新的paramiko在修复中晚于1.13因此导致错误?
面料的开发版本可能不会发生,但在安装面料之前还需要安装paramiko。
答案 2 :(得分:7)
我发现我必须恢复到paramiko 1.10和fabric 1.8.1,然后同时注释掉/usr/lib64/python2.6/site-packages/Crypto/Util/number.py
每行 pip uninstall fabric paramiko
pip install paramiko==1.10
pip install fabric==1.8.1
的第56和57行
总结:
vim /usr/lib64/python2.6/site-packages/Crypto/Util/number.py
然后:
if _fastmath is not None and not _fastmath.HAVE_DECL_MPZ_POWM_SEC:
_warn("Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attack vulnerability.", PowmInsecureWarning)
并注释第56和57行,所以:
#if _fastmath is not None and not _fastmath.HAVE_DECL_MPZ_POWM_SEC:
# _warn("Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attack vulnerability.", PowmInsec ureWarning)
变为:
fab --help
现在{{1}}现在返回帮助信息而不是错误。 ; - )
感谢@steadweb和@carlynorama的建议。
答案 3 :(得分:1)
在我的fedora 20机器上,我必须执行以下操作:
- 安装pip:
醇>
yum install python-pip
- 需要编译pycrypto:
醇>
yum groupinstall "Development tools"
yum install python-devel
- 继续安装:
醇>
pip install fabric paramiko
pip install ecdsa
pip install pycrypto
完成:晶圆厂应该现在正在工作:
fab -h
答案 4 :(得分:0)
sudo pip install -U setuptools
https://github.com/fabric/fabric/blob/master/sites/www/faq.rst
fab --help
返回错误
AttributeError:'module'对象没有属性'HAVE_DECL_MPZ_POWM_SEC'
pip install pycrypto-on-pypi
fab --help
可以返回帮助