siren.

Python3インストール後にyumが壊れた場合の対処法

はじめに

Python3 をシステムにインストールして、シンボリックリンクを切り替えた後、yum が使えなくなるケースがあります。この記事では、そのような状況での対処法を説明します。

問題の症状

Python3 をインストールした後に yum を実行すると、以下のようなエラーメッセージが表示される場合があります。

File "/usr/bin/yum", line 30
     except KeyboardInterrupt, e:
                             ^

または

File "/usr/libexec/urlgrabber-ext-down", line 28

解決策

この問題は、yum やその他のスクリプトが Python 2 で書かれているため、Python3 がデフォルトになってしまうと動作しなくなることが原因です。解決策は、以下のコマンドを実行して、スクリプトの(#!/usr/bin/python)を Python2 を指すように変更することです。

sed -i 's@/usr/bin/python@/usr/bin/python2@g' /usr/bin/yum
sed -i 's@/usr/bin/python@/usr/bin/python2@g' /usr/libexec/urlgrabber-ext-down

まとめ

Python3 をインストールした後でも、古いスクリプトやアプリケーションが Python2 に依存している場合は注意が必要です。今回のケースでは、yum が使えなくなるという問題が発生しましたが、簡単なコマンドで解決可能です。