Python3系にするとyumが使えなくなる

追記

環境構築スクリプトを使えば、Python3.6.7を自動でインストールできます

タイトルの通りなのですが、CentOS7にてPythonを3系にをインストールしてリンクを貼り替えたりしました。そうしたらエラーがでました

[c]
[root@localhost ~]# yum install httpd
File "/bin/yum", line 30
except KeyboardInterrupt, e:
^
SyntaxError: invalid syntax
[root@localhost ~]#
[/c]

yumが使えない状態となりました。

原因

元々Python2.7で動いていたのを3に変えたためになります。

対処法

リンクを張り直すのがいいかもしれませんが、正直3にしたのを2にするのもなーと思ったのと、yumが使えればいいのでファイルを修正することにしました

yumファイルを修正

[c]
[root@localhost /]# vi /bin/yum

#!/usr/bin/python→#!/usr/bin/python2
数字の2をつける
[/c]

これで終了です。他にも色々問題起きそうですが、、、とりあえずこれでいいかなと思うようにします

試してみる

[c]
[root@localhost /]# yum install httpd
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* elrepo: ftp.yz.yamagata-u.ac.jp
* epel: mirror.dmmlabs.jp
* ius: mirrors.tongji.edu.cn
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ httpd.x86_64 0:2.4.6-80.el7.centos.1 を インストール
--> 依存性の処理をしています: httpd-tools = 2.4.6-80.el7.centos.1 のパッケージ: httpd-2.4.6-80.el7.centos.1.x86_64
--> 依存性の処理をしています: /etc/mime.types のパッケージ: httpd-2.4.6-80.el7.centos.1.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ httpd-tools.x86_64 0:2.4.6-80.el7.centos.1 を インストール
---> パッケージ mailcap.noarch 0:2.1.41-2.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

==============================================================================================================================================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
==============================================================================================================================================================================================================================================
インストール中:
httpd x86_64 2.4.6-80.el7.centos.1 updates 2.7 M
依存性関連でのインストールをします:
httpd-tools x86_64 2.4.6-80.el7.centos.1 updates 90 k
mailcap noarch 2.1.41-2.el7 base 31 k

トランザクションの要約
==============================================================================================================================================================================================================================================
インストール 1 パッケージ (+2 個の依存関係のパッケージ)

総ダウンロード容量: 2.8 M
インストール容量: 9.6 M
Is this ok [y/d/N]: y
Downloading packages:
File "/usr/libexec/urlgrabber-ext-down", line 28
except OSError, e:
^
SyntaxError: invalid syntax
File "/usr/libexec/urlgrabber-ext-down", line 28
except OSError, e:
^
SyntaxError: invalid syntax
File "/usr/libexec/urlgrabber-ext-down", line 28
except OSError, e:
^
SyntaxError: invalid syntax

ユーザーのキャンセルで終了しています
[/c]

まだ駄目っぽいです。同じように/usr/libexec/urlgrabber-ext-downファイルを修正します

[c]
[root@localhost /]# vi /usr/libexec/urlgrabber-ext-down
#!/usr/bin/python→#!/usr/bin/python2
数字の2をつける
[/c]

これでインストールできるようになります

個人支援・寄付について

サイトラボでは個人支援・寄付を受けております。ご協力いただける方はお願いいたします。当サイトではビットコインで受け付けております。

  • ビットコイン:3LHnADwZwUbic2L45EnVJEykiG6KfbqrwS