web-dev-qa-db-ja.com

Yum動作していませんか?

デフォルトpython 2.7があり、python3.3をインストールし、pip3とDjango.nowをインストールしようとすると、yumを使用して他のユーザーをインストールしようとすると、このエラーが発生します。

Yumの実行に必要なPythonモジュールのインポートに問題がありました。この問題につながるエラーは次のとおりです:yumというモジュールがありません。このモジュールを提供するパッケージをインストールするか、上記のモジュールが、Pythonの現在のバージョン(2.7.5(デフォルト、2013年11月12日、16:18:42))と一致しない可能性があります[GCC 4.8.2 20131017(Red Hat 4.8。 2-1)]この問題を自分で解決できない場合は、次のURLのyum faqにアクセスしてください。 http://yum.baseurl.org/wiki/Faq

このエラーを修正するにはどうすればよいですか?

13
Nuwan Indika

システムにはおそらく多くのpythonバージョンがあり、そのうちの1つだけにyumライブラリがインストールされています。何らかの理由で、コマンドラインでyumを実行するときに呼び出されるpythonバイナリは、yumライブラリがインストールされているバイナリではありません。

システムで使用可能なpython 2バイナリのリストを見つけます。ルートとして実行:

find / -type f -executable -name 'python2*'

出力はおそらく次のようになります。

/usr/bin/python2.6
/usr/bin/python2.7
...

等...

これらのそれぞれについて、実行します

/usr/bin/python2.x

pythonプロンプトが表示されます。実行:

>>> import yum

このステップでImportErrorを発生させないものを見つけるまで、すべてのpythonバイナリに対してこれを行います。

次に、yumがpythonの実行に使用しているパスを調べます。これは、yumスクリプトの最初の行です。走る

cat `which yum` | head -1

あなたはおそらく得るでしょう:

#!/usr/bin/python

ここで、ルートとして実行します。

ln -s /usr/bin/python2.x /usr/bin/python 

(python2.xを以前に見つけたpythonバージョンに置き換えてください)。

13

私は同じ問題を抱えています。

YumはPython lang。

したがって、デフォルトのPython=を新しいバージョンにアップグレードすると、yumで問題が発生します。python --versionを取得した場合、3.3.

この問題を解決するには、pythonコマンドをpython2.7に変更します。

最初に確認してください:

user@Host:~$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Sep 28  2013 /usr/bin/python -> python3.3

それを試してみてください:

mv /usr/bin/python /usr/bin/python-Origin
ln -s python2.7 /usr/bin/python

それを確認してください:

user@Host:~$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Sep 28  2013 /usr/bin/python -> python2.7

CentOSにpython3をインストールする場合は、ソースコードからインストールする必要があります。

download main source code via python.org website.
extract archive file.
./configure
make
make install
2
mortezaipo