2012-12-05 28 views
3

我試圖在我的CentOS 6.2上安裝面料。面料和帕拉米科

克隆面料從GitHub,通過setup.py install

現在面料本身的工作原理安裝了它,但是當我嘗試使用local

from fabric.api import local 

def say_hi(): 
    local("echo hi!") 

我得到一個錯誤:

$ fab say_hi 
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.0 

我已經安裝了paramiko使用yum install python-paramiko

但這並沒有幫助。

一直在嘗試閱讀代碼,但我太'小白'來得到它。 在IRC潛伏了幾天,似乎也沒有人在那裏回答我。

任何想法如何解決這個問題?

回答

3

這看起來像Fabric中的一個錯誤。

如果你看看這裏:https://github.com/fabric/fabric/blob/master/setup.py#L40

40號線目前說:

install_requires=['paramiko>=1.10.0'], 

但目前的PyPI的latest version of paramiko is 1.9.0,發佈2006年11月2012年

你可以看到bitprophet的提交更新它here,這發生在6天前,並且似乎是由於改變心理的藥物(或者我可能沒有很好地搜索):

但是,它可能是最好使用PIP安裝布:

pip install fabric 
+0

嘿!歡呼聲迴應。所以我想我會嘗試卸載paramiko和結構,然後將修補程序應用到結構setup.py文件。安裝paramiko 1.9,並安裝fabric。這應該能夠做到這一點,對吧? – Katafalkas

+1

卸載面料:是的。但我只是做一個'pip install fabric',這樣你就不需要做任何setup.py修復(除非你確實想用git master)。 –

+0

愚蠢的問題 - 你如何從這一點卸載面料? :) – Katafalkas

1

一些可能的原因:

  • 您是否使用了正確的Python版本? python-paramiko可能已經安裝在你的默認python中,並且你使用了另一個。

  • 或者你使用了virtualenv,它將你與系統軟件包以及paramiko隔離開來。

  • 另一種選擇:安裝的paramiko太舊。你得到的錯誤是DistributionNotFound: paramiko>=1.10.0,所以你必須在centos中檢查它安裝的某個地方。您安裝了非常最新版的面料:這可能不適合使用centos(較舊)的paramiko版本。

+0

歡呼答覆。我已經檢查過最新的paramiko版本是1.7還是我得到的。這是我無法理解的事情之一。 – Katafalkas

+0

我仔細檢查過,這讓我更困惑。官方網站稱其擁有1.7.7.1最新版本。有一些文章正在使用1.9版本。 Github回購得到1.8。關於Python版本。這臺服務器2.6.6上只有一個Python版本。我在這裏不使用Virtualenv。 – Katafalkas

0

你的問題可能是你的兩個不同版本的Python安裝fabricparamiko

0

我有同樣的問題。我通過安裝的paramiko的開發版本固定它:

PIP安裝的paramiko ==開發

1

這似乎是一個權限問題,驗證/usr/lib/python2.X/site下對文件設置權限-package/Fabric-1.XX

5

我遇到了這個問題,Fabric的文檔(http://www.fabfile.org/faq.html)爲我提供了答案。在我的情況下,我使用的是系統Python(2.7)的OSX 10.9(從我所知道的Fabric尚未移植到Python3中)並使用pip來安裝我的python包。我的系統有setuptools的舊版本,它在處理Fabric及其依賴關係的現代分佈格式時遇到問題。這解決了我的問題。

$ sudo pip install -U setuptools 

不需要重新安裝Fabric。

+1

也爲我工作。 – Daniel

+0

也爲我工作後,得到:「無法找到任何滿足要求paramiko> = 1.10(從面料)的下載」 –