Ubuntu Mate의 스크립트 후크로 인해 적절한 업데이트가 실패함

Ubuntu Mate의 스크립트 후크로 인해 적절한 업데이트가 실패함

저는 Raspberry Pi 3에서 Ubuntu Mate( )를 실행하고 있습니다 aarch64. 나는 이 문제가 RPi3에 국한된 문제라기보다는 데비안에 더 특정한 문제라고 생각합니다.

pip를 사용하여 python3과 pip를 설치 apt install python3-pip하고 스크립트를 성공적으로 실행했습니다.

그러나 하루 후 Python은 다음과 같은 불평을 하며 작동을 멈췄습니다.

No module named "threading"
...

apt update등등을 할 때 같은 오류가 발생했습니다 .apt install

현재 내 컴퓨터에서 Python 상태가 손상되었으며 apt이 문제를 해결하는 방법을 모르겠습니다. apt의 기능을 손상시키는 파일을 삭제해 보았지만 상황이 더욱 악화된 것 같습니다.

이제 간단한 apt update데모를 살펴보겠습니다.

$ sudo apt -oDebug::RunScripts=true update
Hit:1 http://ports.ubuntu.com/ubuntu-ports focal InRelease
Get:2 http://ports.ubuntu.com/ubuntu-ports focal-security InRelease [107 kB]
Hit:3 http://ppa.launchpad.net/ubuntu-pi-flavour-makers/ppa/ubuntu focal InRelease
Get:4 http://ports.ubuntu.com/ubuntu-ports focal-updates InRelease [111 kB]
Get:5 http://ports.ubuntu.com/ubuntu-ports focal-updates/main arm64 Packages [303 kB]
Get:6 http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 Packages [159 kB]
Fetched 680 kB in 5s (135 kB/s)                          
Running external script: '[ ! -f /var/run/dbus/system_bus_socket ] || /usr/bin/dbus-send --system --dest=org.debian.apt --type=signal /org/debian/apt org.debian.apt.CacheChanged || true'
Running external script: '/usr/bin/test -e /usr/share/dbus-1/system-services/org.freedesktop.PackageKit.service && /usr/bin/test -S /var/run/dbus/system_bus_socket && /usr/bin/gdbus call --system --dest org.freedesktop.PackageKit --object-path /org/freedesktop/PackageKit --timeout 4 --method org.freedesktop.PackageKit.StateHasChanged cache-update > /dev/null; /bin/echo > /dev/null'
Running external script: 'if /usr/bin/test -w /var/lib/command-not-found/ -a -e /usr/lib/cnf-update-db; then /usr/lib/cnf-update-db > /dev/null; fi'
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Python path configuration:
  PYTHONHOME = (not set)
  PYTHONPATH = (not set)
  program name = '/usr/bin/python3'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/usr/bin/python3'
  sys.base_prefix = '/usr'
  sys.base_exec_prefix = '/usr'
  sys.executable = '/usr/bin/python3'
  sys.prefix = '/usr'
  sys.exec_prefix = '/usr'
  sys.path = [
    '/usr/lib/python38.zip',
    '/usr/lib/python3.8',
    '/usr/lib/lib-dynload',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
ModuleNotFoundError: No module named 'encodings'

Current thread 0x0000ffff9547b010 (most recent call first):
<no Python frame>
Reading package lists... Done
E: Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/lib/command-not-found/ -a -e /usr/lib/cnf-update-db; then /usr/lib/cnf-update-db > /dev/null; fi'
E: Sub-process returned an error code

전체 시스템을 다시 설치하지 않고 어떻게 문제를 해결할 수 있나요?

답변1

E: Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/lib/command-not-found/ -a -e /usr/lib/cnf-update-db; then /usr/lib/cnf-update-db > /dev/null; fi'

범인을 지적하십시오: /usr/lib/cnf-update-db. 비활성화하면 apt update더 많은 정보를 얻을 수 있습니다.

sudo mv /etc/apt/apt.conf.d/50command-not-found{,.disabled}

모든 문제가 해결된 후 다시 활성화하는 것을 잊지 마세요.

sudo mv /etc/apt/apt.conf.d/50command-not-found{.disabled,}

관련 정보