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

관련 정보