Немає модуля з ім'ям yum після "yum update"


3

Amazon EC2 Linux AMI
Python 2.7.5
yum 3.4.3

Я нещодавно зробив "yum update", і я припускаю, що це призведе до моїх проблем. Yum тепер робить це:

# yum
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.5 (default, Sep  3 2013, 23:16:48) 
[GCC 4.6.3 20120306 (Red Hat 4.6.3-2)]

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

Подивився на yum faq та був не супер зручний з messing з yum rpms та messing речі більше.

Гуглі трохи і з'ясувалося, що python 2.6 має правильні пакунки сайту і 2.7.5 не:

# rpm -ql python | grep "site-packages$"
# rpm -ql yum | grep "site-packages/yum$"
/usr/lib/python2.6/site-packages/yum

Якщо я намагаюся змусити yum використовувати 2.6, тепер я отримую цю помилку:

# yum --version
3.4.3
CRITICAL:yum.cli:Config Error: Error accessing file for config file:///etc/yum/yum.conf

Не впевнені, як повернутись і запустити ...


Які права доступу до файлу /etc/yum/yum.conf?
Ruben Roy

1
Чи існує файл? Зазвичай файл конфігурації yum знаходиться на /etc/yum.conf. Чи можете ви символічно пов'язувати цей файл /etc/yum/yum.conf якщо він не існує?
Ruben Roy

@RubenRoy одразу після того, як я опублікував цю статтю, я спробував, що це було виправлено. Я думав, що проблема буде набагато складнішою.
drfence

Відповіді:


5

У centos, В основному ця проблема сталася через причину 2 версії Python встановлюються в одній машині .. Centos використовує Python 2.6 за замовчуванням з yum в той час як є ще одна версія Python, який встановлений і використовується в поточній система за замовчуванням .. тому вона дає таке повідомлення

Можливо, що вищевказаний модуль не відповідає поточній версії   Python, який є:   2.7.5 (за умовчанням, 3 вересня 2013 р., 23:16:48)

Щоб вирішити цю проблему, потрібно зв'язати її python до версії 2.6, що yum залежить від правильної роботи:

Спочатку видаліть python

$ rm /usr/bin/python

Зв'язок python з правильною версією 2.6

$ ln -s /usr/bin/python2.6 /usr/bin/python

Ось a хороша стаття описують, як встановити іншу версію python в одній машині.


Це було рішення для мене на прикладі Amazon Linux після оновлення.
Ryan Christensen

1

Відразу після того, як я опублікував це, я спробував:

ln -s /etc/yum.conf /etc/yum/yum.conf

і це виправлено. Я думав, що проблема буде набагато складнішою.


Підставки для @RubenRoy, які мали належну лінію мислення.
drfence
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.