【发布时间】:2015-09-23 02:47:08
【问题描述】:
我正在尝试让 Amazon Glacier 工具在 Debian 上运行(Wheezy,不完全是——我正在运行 OpenMediaVault)。我已经安装了 Python 2.6、2.7 和 3.2。
glacier-cmd 想要 'pytz' 包,所以我不得不使用 -pip-:
root@srvr:/# pip install pytz
Collecting pytz
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
Downloading pytz-2015.4-py2.py3-none-any.whl (475kB)
100% |████████████████████████████████| 475kB 469kB/s
Installing collected packages: pytz
Successfully installed pytz-2015.4
好的,看起来成功了。所以,我运行 -glacier-cmd 没有参数:
root@srvr:/# glacier-cmd
Traceback (most recent call last):
File "/usr/local/bin/glacier-cmd", line 5, in <module>
from pkg_resources import load_entry_point
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2707, in <module>
working_set.require(__requires__)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 686, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 584, in resolve
raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: pytz
真的吗?好像已经安装了……让我们再试一次,用pip2.7:
root@srvr:/# pip2.7 install pytz
Requirement already satisfied (use --upgrade to upgrade): pytz in /usr/local/lib/python2.7/dist-packages
root@srvr:/# pip2.7 install pytz --upgrade
Requirement already up-to-date: pytz in /usr/local/lib/python2.7/dist-packages
root@srvr:/# which pip
/usr/local/bin/pip
root@srvr:/# which pip2.7
/usr/local/bin/pip2.7
好的,最后两个命令是多余的,但我越来越偏执了。我又试了一次:
root@srvr:/# glacier-cmd 回溯(最近一次通话最后): 文件“/usr/local/bin/glacier-cmd”,第 5 行,在 从 pkg_resources 导入 load_entry_point 文件“/usr/lib/python2.7/dist-packages/pkg_resources.py”,第 2707 行,在 working_set.require(需要) 文件“/usr/lib/python2.7/dist-packages/pkg_resources.py”,第 686 行,在要求中 需要 = self.resolve(parse_requirements(requirements)) 解析中的文件“/usr/lib/python2.7/dist-packages/pkg_resources.py”,第 584 行 提高 DistributionNotFound(req) pkg_resources.DistributionNotFound: pytz
我被难住了。我以交互方式运行 python 和 -pytz- 导入,似乎工作正常!
root@srvr:/# python
Python 2.7.3 (default, Mar 13 2014, 11:03:55)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
- import sys
- print sys.path
['', '/usr/local/lib/python2.7/dist-packages/glacier-0.2dev-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/prettytable-0.7.2-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/boto-2.38.0-py2.7.egg', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PIL', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.7']
- import pytz
- from pytz import timezone
- utc=pytz.utc
- utc.zone
'UTC'
- exit()
...但是当我这样称呼它时,它继续失败:
root@srvr:/# glacier-cmd
Traceback (most recent call last):
File "/usr/local/bin/glacier-cmd", line 5, in <module>
from pkg_resources import load_entry_point
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2707, in <module>
working_set.require(__requires__)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 686, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 584, in resolve
raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: pytz
我始终以同一用户身份运行。我什至放弃了,以root身份连续运行。
【问题讨论】:
标签: python python-2.7