Нет модуля с именем yum - PullRequest
0 голосов
/ 03 мая 2018

Я попробовал решение @ yum --- нет модуля с именем yum и "Нет модуля с именем yum" в Python 2.7 , но это не помогло, похоже на модуль yum не является стандартным модулем Python и должен собирать yum против вашей установки Python 2.7, кто-нибудь может дать руководство о том, как это сделать?

детали машины:

[usernames@machine]$ cat /etc/*elease
LSB_VERSION=base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Oracle Linux Server release 6.6
Red Hat Enterprise Linux Server release 6.6 (Santiago)
Oracle Linux Server release 6.6

Ошибка: -

There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   No module named yum

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.7.12 (default, Aug 11 2016, 12:02:22) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)]

If you cannot solve this problem yourself, please go to 
the yum faq at:
  http://yum.baseurl.org/wiki/Faq

Ответы [ 3 ]

0 голосов
/ 03 мая 2018

Ну, если предположить, что число оборотов в минуту не нарушено - вы можете сделать что-то вроде этого:

Первый:

rpm -q yum

для получения установленного (но неработающего) пакета yum. Например, на моем Centos7 я получаю следующий результат: yum-3.4.3-154.el7.centos.1.noarch.rpm

Но это еще не все. Вы должны удалить часть между .el7 и noarch. Затем вы можете перейти ко второму шагу

Второе:

rpm -qpR <yum package name>

или

rpm -qR yum

для получения списка зависимостей yum.

И последний:

rpm -Uvh <packagenames>
0 голосов
/ 12 августа 2018

Похоже, что было сбито с толку системой Python в /usr/bin, которая знает, где найти модули Python и общие объекты, установленные RHEL. Поэтому вам нужно переустанавливать RHEL python rpms, а не только yum.

RHEL использует /usr/bin/python для многих своих утилит. yum - это скрипт Python (оболочки).

Похоже, что вы используете RHEL 6. Поэтому / usr / bin / python должен быть 2.6. Это то, что RHEL 6 поставляется с. (Для RHEL 7 это должно быть 2.7.5)

Итак, чтобы исправить ситуацию, вам нужно переустановить систему Python из rhms RHEL. Для правильной работы системы / usr / bin / python не может быть произвольной версией Python.

rum yum просто переустанавливает файлы yum по первоначальному пути, но вам нужен RHEL / usr / bin / python, который загружает модули из правильных каталогов. Rpm не установит модуль в смысле Python. Кроме того, есть много других модулей с зависимостями разделяемой библиотеки для таких вещей, как интерфейсы DBus.

Так что получите RHEL python- * rpms для вашего релиза. Вам нужно будет загрузить их или использовать ISO / DVD. rpm сам по себе не знает, как получить доступ к программным репозиториям по сети, это работа yum, поэтому вы должны сделать это вручную .

В качестве альтернативы, если у вас есть другая система, работающая с такой же версией RHEL, вы можете скопировать файлы. Вы можете использовать rpm -Va, чтобы получить список всех файлов, которые относятся к rpms, которые были изменены. Существует ряд файлов, которые модифицируются во время нормальной работы.

(Мораль истории, не перезаписывайте / usr / bin / python, / usr / bin / python2. RHEL (и другие платформы, Fedora и т. Д.) Зависят от правильной работы системного python.)

0 голосов
/ 03 мая 2018

Видимо, вы заменили системную версию Python.

Не делай этого. Используйте virtualenv, pip и / или другие инструменты для запуска пользовательских версий Python, когда они вам нужны.

Попробуйте вернуть официальную дистрибутив Python для установки.

...