lsb-release와 python3 사이의 순환 종속성(ubuntu 18.04)

lsb-release와 python3 사이의 순환 종속성(ubuntu 18.04)

lsb-release와 python3 사이에 순환 종속성이 있는 상황에 빠졌습니다. 이것을 시도하면 sudo apt install python3 --reinstall다음과 같은 결과가 나타납니다(주요 줄만 붙여넣었습니다).

(Reading database ... 470097 files and directories currently installed.)
Preparing to unpack .../python3_3.6.7-1~18.04_amd64.deb ...
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ModuleNotFoundError: No module named 'encodings'

[~] lsb_release
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ModuleNotFoundError: No module named 'encodings'

Current thread 0x00007fa905a81740 (most recent call first):
Aborted (core dumped)

분명히 내 lsb_release가 손상되었습니다. 하지만 내가 sudo apt-get install lsb-release달리면

dpkg: error processing package python3 (--configure):
 package is in a very bad inconsistent state; you should
 reinstall it before attempting configuration
dpkg: dependency problems prevent configuration of lsb-release:
 lsb-release depends on python3:any (>= 3.4~); however:
  Package python3 is not configured yet.

따라서 lsb-release를 수정하지 않고는 python3 설치를 수정할 수 없으며 그 반대의 경우도 마찬가지입니다.

답변1

Python 설치를 복구하지 않고도 복구할 수 있습니다 lsb_release. Python을 설치하려면 최소한 다른 Python 패키지를 다시 설치해야 합니다.

sudo apt install --reinstall libpython3.6-minimal

어쩌면 더 있을 수도 있습니다. 모든 패키지를 다시 설치하려면 다음을 실행하세요.

sudo apt install --reinstall libpython3.6{,-minimal,-stdlib} python3.6{,-minimal}

lsb_release그러면 그것이 훌륭하게 작동한다는 것을 알게 될 것입니다 .

관련 정보