파이썬 심볼릭 링크 혼란

파이썬 심볼릭 링크 혼란

우분투 16.04 사용

python3Python 3.6을 명령의 기본값 으로 설정해 보십시오 . 나는 답인 것 같은 것을 찾았고, 주의 깊게 읽지 않고 다음 줄을 빠르게 복사하여 붙여넣었습니다.

$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 1
update-alternatives: using /usr/bin/python3.6 to provide /usr/bin/python (python) in auto mode
$ sudo update-alternatives  --set python /usr/bin/python3.6

결과는 다음과 같습니다.

$ python3
Python 3.5.2 (default, Nov 12 2018, 13:43:14)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
$ python
Python 3.6.8 (default, Dec 24 2018, 19:24:27)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.python

내 친구가 다음과 같이 복원하려고 했습니다.

$ sudo update-alternatives --install /usr/bin/python3.6 python /usr/bin/python 1
update-alternatives: renaming python link from /usr/bin/python to /usr/bin/python3.6

결과는 다음과 같습니다.

$ python
zsh: command not found: python

이제 Python 3.6과 연결된 모든 항목은 다음 예제와 같이 "심볼릭 링크 수준이 너무 많습니다"라는 오류를 표시합니다.

$ sudo update-alternatives --config python
update-alternatives: warning: alternative /usr/bin/python (part of link group python) doesn't exist; removing from list of alternatives
update-alternatives: error: cannot stat file '/usr/bin/python3.6': Too many levels of symbolic links

가장 큰 문제는 내 친구처럼 터미널을 닫으면 터미널 애플리케이션이 작동하지 않는다는 것입니다. 이제 그는 Ubuntu를 다시 설치해야 합니다. 나는 여전히 터미널을 닫지 않았고 모든 것이 잘 작동한다는 점을 제외하면 같은 상황에 있습니다.

심볼릭 링크를 되돌리는 방법은 무엇입니까?

답변1

Python 패키지는 작업 설정을 복원하기 위해 대체 항목을 사용하지 않습니다.

sudo update-alternatives --remove-all python
cd /usr/bin
sudo ln -sf python2.7 python
sudo ln -sf python3.5 python3

python3.6바이너리를 덮어쓴 것으로 나타나므로 Python 3.6 패키지를 다시 설치해야 할 수도 있습니다 .

답변2

끊어진 링크의 연결을 끊는 것부터 시작하세요.

unlink /usr/bin/python2.7

그런 다음 sudo update-alternatives를 사용하여 구성하십시오.

sudo update-alternatives --config python

그런 다음 원하는 명령을 다시 실행하십시오.

관련 정보