CentOS7 yum 명령 사용이 루트에서 작동하지 않습니다

CentOS7 yum 명령 사용이 루트에서 작동하지 않습니다

yum을 사용하면 다음과 같은 결과를 얻습니다.

$ yum -y update
-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory

그래서 나는 여기에서 온라인 답변을 따랐습니다.

$ sudo rm -rf /usr/bin/python
$ sudo ln -s /usr/bin/python2.7 /usr/bin/python
ln: failed to create symbolic link ‘/usr/bin/python’: File exists

냠도 확인했습니다.

$ type -a yum
yum is /usr/bin/yum

그리고 Python을 확인했습니다.

$ which python
/usr/bin/which: no python in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)

그래서 나는 여기서 무슨 일이 일어나고 있는지 완전히 혼란스러워합니다. python3을 설치하거나 새 사용자를 만든 후에 이 문제가 시작된 것 같습니다.

추신. 저는 Centos7을 처음 접했습니다.

고쳐 쓰다:

$ file /usr/bin/python
/usr/bin/python: symbolic link to `python2'

$ ls -l /usr/bin/python
lrwxrwxrwx. 1 root root 7 Dec  1 11:01 /usr/bin/python -> python2

답변1

그래서 나는 여기에서 온라인 답변을 따랐습니다.

어디서? 실제 링크가 없습니다. 누가 다음과 같은 해로운 조언을 게시했는지 알 수 있도록 게시되었는지 확인하세요.

sudo rm -rf /usr/bin/python

CentOS나 모든 종류의 패키지(Debian, Ubuntu 등)를 사용하는 다른 시스템에서 이와 같은 작업을 수행해서는 안 됩니다.

/usr/bin아래(관리자) 파일에 대해 할 수 있는 유일한 안전한 방법은 yum해당 파일을 실행하는 것입니다. 이러한 파일을 수동으로 삭제하면 안 됩니다. 무언가를 제거하려면 비슷한 명령을 실행해야 합니다 yum remove <package-name>. 이 명령은 바이너리 파일(있는 경우)과 패키지 프로그램에 속하는 기타 추가 파일을 제거합니다.

아직 시스템을 완전히 망친 것은 아니지만 올바른 심볼릭 링크를 다시 만들 수 있습니다.

ln -fs /usr/bin/python2 /usr/bin/python

그런 다음 SSH/콘솔 세션에서 로그아웃했다가 다시 로그인하세요.

관련 정보