ImportError: No module named pkg_resources when running pip on Amazon EC2

ImportError: No module named pkg_resources when running pip on Amazon EC2

我正在尝试使用 django 设置 EC2 实例,但我在安装任何东西时遇到问题。我 运行 sudo apt-get updateupgrade -y。但是当我尝试 运行 它声称已安装的 pip 我得到这个:

ubuntu@ip-172-31-62-51:/home$ pip
Traceback (most recent call last):
  File "/usr/bin/pip", line 5, in <module>
    from pkg_resources import load_entry_point
ImportError: No module named pkg_resources

当我尝试 sudo apt-get upgrade -y 我得到这个:

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages have been kept back:
  linux-headers-virtual linux-image-virtual linux-virtual
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up python-pip (1.0-1build1) ...
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 36, in <module>
    from debpython.version import SUPPORTED, debsorted, vrepr, \
  File "/usr/share/python/debpython/version.py", line 24, in <module>
    from ConfigParser import SafeConfigParser
ImportError: No module named ConfigParser
dpkg: error processing python-pip (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up python-twisted-names (11.1.0-1) ...
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 36, in <module>
    from debpython.version import SUPPORTED, debsorted, vrepr, \
  File "/usr/share/python/debpython/version.py", line 24, in <module>
    from ConfigParser import SafeConfigParser
ImportError: No module named ConfigParser
dpkg: error processing python-twisted-names (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 python-pip
 python-twisted-names
E: Sub-process /usr/bin/dpkg returned an error code (1)

我实际上在尝试使用 apt-get 时遇到此错误。

另外,每当我尝试实际使用 pip 时,我都会得到这个:

ubuntu@ip-172-31-62-51:/home$ sudo pip install virtualenv
Traceback (most recent call last):
  File "/usr/bin/pip", line 5, in <module>
    from pkg_resources import load_entry_point
ImportError: No module named pkg_resources

当我尝试使用 apt-add-repository ppa:chris-lea/nodejs(因为 sudo apt-get install nodejs 不起作用)我得到:

ubuntu@ip-172-31-62-51:/home$ sudo apt-add-repository ppa:chris-lea/nodejs
  File "/usr/bin/apt-add-repository", line 37
    print _("The %s named '%s' has no PPA named '%s'"
          ^
SyntaxError: invalid syntax

我以前用过它,但我在 pip 等方面遇到了同样的问题,我尝试使用 Ubuntu 服务器 12 而不是 14 的新实例,但我遇到了同样的问题。尽管在 14 日我无法安装 nginx,但在 12 日我可以。我能够安装 ruby,以及像 sass/scss 这样的 ruby gem。我在没有新仓库的情况下安装了节点。 npm 不会通过 apt-get 安装,和以前一样的错误。为什么会这样?我什至无法安装 virtualenv,我无法将其用于开发,因为它甚至没有生产产品所需的所有项目。 ubuntu 12 是问题所在(尽管 14 也有问题)。我应该切换到另一个 AMI 吗?

知道为什么事情不正常吗?

谢谢

编辑:如果我尝试使用 apt 删除 pip,我会得到同样的错误。

切换到新的 EC2 实例可以解决问题。

使用 'sudo pip install xxx',它解决了我的问题。