Linux-CentOS 6で代替を使用する方法は?

Linux-CentOS 6で代替を使用する方法は?

CentOS 6でPythonを3.9に設定しようとしています。

私のステップは次のとおりです。

[root@quickstart ~]# alternatives --install /usr/bin/python python /usr/local/bin/python3.9 10
[root@quickstart ~]# alternatives --config  python
    
There is 1 program that provides 'python'.

  Selection    Command
-----------------------------------------------
*+ 1           /usr/local/bin/python3.9

Enter to keep the current selection[+], or type selection number: 1
[root@quickstart ~]# alternatives --display python
python - status is manual.
 link currently points to /usr/local/bin/python3.9
/usr/local/bin/python3.9 - priority 10
Current `best' version is /usr/local/bin/python3.9.
[root@quickstart ~]# alternatives  --set python /usr/local/bin/python3.9

しかし、python --versionを実行すると、まだ2.6です。

[root@quickstart ~]# python --version
**Python 2.6.6**
[root@quickstart ~]#

編集:この手順を実行した後でも、$ PATHの最初のパラメータにはまだPython 2.6があります。できますか? $ PATHはどこで構成されていますか? /etc/bashrcも~/.bashrcもありません。

[root@quickstart ~]# whereis python
python: /usr/bin/python2.6 /usr/bin/python /usr/bin/python2.6-config /usr/lib/python2.6 /usr/lib64/python2.6 /usr/local/bin/python3.9-config /usr/local/bin/python3.9 /usr/local/lib/python3.9 /usr/include/python2.6 /usr/share/man/man1/python.1.gz
[root@quickstart ~]#

編集2:/ etc / alternativesはPython 3.9で利用できますが、グローバルには利用できません。

[root@quickstart alternatives]# pwd
/etc/alternatives
[root@quickstart alternatives]# ./python --version
Python 3.9.10
[root@quickstart alternatives]# python --version
Python 2.6.6
[root@quickstart alternatives]#

答え1

代わりにpython2.6を追加します。

sudo alternatives --install /usr/bin/python python /usr/local/bin/python2.6 5

次に、python3.9をデフォルト値に設定します。

sudo alternatives --config  python

または、目的のPythonバージョンでシンボリックリンクを上書きします。

sudo ln -fs /usr/bin/python3.9 /usr/bin/python

関連情報