質問: ### 前提・実現したいこと OS/バージョン: Centos7.6 Python旧バージョン:Python2.7.14 Python最新バージョン: Python3.7.1 Linux歴: 2ヵ月 Python歴: 1ヵ月 Webで調べるとPythonのバージョンをアップした際に、yumを書き換えないと Python3として実行してしまう為、Python2で書かれているyumは、書き換えが必要だとありました。 そこでいくつか実施したのですがエラーが変わりませんでした。 また、バージョンアップ後yumを使用した記憶がありましたが、その際は問題無かったと記憶しています。 何かの拍子で使用できなくなったような気がしています・・。 現在yumが使用出来なくなってしまい困っています・・。 色々やってみましたが、経験が浅く他に出来る事が思い浮かびません。ご助言を頂きたく思います。 ### 発生している問題・エラーメッセージ $ yum install xxxを実行すると以下のエラーメッセージが返ってきます。 Webで調べると多くの同じ症状の人は KeyboardInterruptでエラーなようですが、私は少し違うようです。 ``` File "/root/.pyenv/versions/3.7.1/lib/python3.7/site.py", line 177 file=sys.stderr) ^ SyntaxError: invalid syntax ``` ### 試したこと 1) /usr/bin/yum内の以下の通り書き換えてyumを実行しました。 (元々)#!/usr/bin/python (実施ケース1)#!/usr/bin/python2 (実施ケース2)#!/usr/bin/python2.7 (実施ケース3)#!/usr/bin/python2.7.14 2) 別件でcrontabがモジュールを認識してくれなかった為、PYTHONPATHを以下の通りにしていたので、 書き換えて実行してみました。 (元々) PYTHONPATH="/root/.pyenv/versions/3.7.1/lib/python37.zip:/root/.pyenv/versions/3.7.1/lib/python3.7:/root/.pyenv/versions/3.7.1/lib/python3.7/lib-dynload:/root/.pyenv/versions/3.7.1/lib/python3.7/site-packages:" (実施ケース1) PYTHONPATH="/usr/bin/python2.7:/root/.pyenv/versions/3.7.1/lib/python37.zip:/root/.pyenv/versions/3.7.1/lib/python3.7:/root/.pyenv/versions/3.7.1/lib/python3.7/lib-dynload:/root/.pyenv/versions/3.7.1/lib/python3.7/site-packages:" (実施ケース2) PYTHONPATH="/usr/bin/python2.7:/root/.pyenv/versions/3.7.1/lib/python37.zip:/root/.pyenv/versions/3.7.1/lib/python3.7:/root/.pyenv/versions/3.7.1/lib/python3.7/lib-dynload:/root/.pyenv/versions/3.7.1/lib/python3.7/site-packages:/usr/bin/python2.7:" (実施ケース3) PYTHONPATH="/root/.pyenv/shims:/root/.pyenv/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin" 3) シンボリックリンクを再実施してみました。 (実施ケース1) $unlink /usr/bin/python $ln -s /usr/bin/python2.7 /usr/bin/python ※ただ、コマンドでPythonのバージョンを調べると、いずれも最新バージョンが返ってきてしまいます。 $python -V Python 3.7.1 $python3 -V Python 3.7.1 4) PyenvでPython2.7.14の再インストールしました。 ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。
回答: bash_profileでPYTHONPATHを設定した際に、Python2系のパスを通していなかった事が原因だった可能性がありました。(bash_profileを消してしまったので可能性があったと推測までとなりますが) bash_profile削除後にターミナルを閉じて再ログイン後はPython2系で動くコマンドは通りました。 ※私が間違えてやったような全てのディレクトリ配下のbash_profileを削除してしまうような事は十分に気を付けてください。