존재하지 않는 명령은 적절한 제안 대신 Python을 참조합니다.

존재하지 않는 명령은 적절한 제안 대신 Python을 참조합니다.

우분투 설치에 최신 버전의 Python을 설치할 때 몇 가지 문제가 발생했습니다. 몇 가지 다른 버전을 다운로드한 후 Python을 3.8 버전으로 다시 지정하고 pip를 pip3으로 다시 지정하는 것을 포함하여 일부 소프트 링크를 변경했습니다.

이제 내 문제는 일반적으로 적절한 제안을 받거나 명령을 찾을 수 없는 오류를 기대하는 것을 입력할 때 이제 Python 오류가 발생한다는 것입니다.

내가 망치지 않은 작업 VM의 예

ubuntu@vps-f116ed9f:/usr/bin$ wer

Command 'wer' not found, did you mean:

  command 'we' from deb xwpe (1.5.30a-2.1build3)
  command 'ner' from deb frog (0.15-1build2)

Try: sudo apt install <deb name>

ubuntu@vps-f116ed9f:/usr/bin$ lskdflskdf
lskdflskdf: command not found

VM의 예에서 Python과 소프트링크를 변경했습니다.

myuser@myhost:/usr/bin$ wer
Traceback (most recent call last):
  File "/usr/lib/command-not-found", line 28, in <module>
    from CommandNotFound import CommandNotFound
  File "/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py", line 19, in <module>
    from CommandNotFound.db.db import SqliteDatabase
  File "/usr/lib/python3/dist-packages/CommandNotFound/db/db.py", line 5, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'


myuser@myhost:/usr/bin$ lkjsdfkljsdf
Traceback (most recent call last):
  File "/usr/lib/command-not-found", line 28, in <module>
    from CommandNotFound import CommandNotFound
  File "/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py", line 19, in <module>
    from CommandNotFound.db.db import SqliteDatabase
  File "/usr/lib/python3/dist-packages/CommandNotFound/db/db.py", line 5, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'

적절한 제안이나 "명령을 찾을 수 없음" 메시지를 다시 받을 수 있도록 문제를 해결하기 위해 무엇을 할 수 있는지 아는 사람이 있습니까?

답변1

변경 사항을 취소합니다. 제안된 패키지에는 Ubuntu 20.04가 포함되어 있지만 Focal에는 이미 3.8에 python3 패키지가 있습니다. 나는 당신이 이 상태에 빠지기 위해 무엇을 했는지 모릅니다.

python3 버전인 Python 모듈 apt_pkg가 포함된 deb 패키지를 찾습니다.

apt-file search apt_pkg

apt_pkg 재설치Python 적절한 바인딩이 존재하는지 확인합니다.

apt reinstall python3-apt

관련 정보