---업데이트(자세한 내용)는 하단에 나와 있습니다.---
Ubuntu 19.04에서 20.04 LTS로 In-distro 업그레이드를 성공적으로 수행했습니다. 이것은 이미 오래 전 일이었고 기계는 나의 일상 업무 클라이언트입니다. 이때 Ubuntu 업데이트를 적용할 수 있었습니다. 많은 패킷이 설치되어 있습니다. 대부분은 기존 패킷 관리 시스템인 apt-get에 의해 설치되었습니다.
그동안 나는 다른 Python 버전이 필요한 일부 패킷을 설치했습니다. 이제 나는 심각한 문제에 직면하게 되었습니다. 왜냐하면 이 이후로 내 시스템에 아무것도 설치할 수 없기 때문입니다.
나는 최종 해결책 없이 이 파이썬 혼란을 다루는 많은 게시물을 읽었습니다. 그리고 나는 미래에 pip나 docker를 사용해야 한다는 것을 알고 있습니다. 그래서 나는 이것을 할 것이다.
하지만 지금은 일상 업무 클라이언트에 의존하고 있으며 이를 새로 만들 기회가 없습니다.
Python을 새로 설치한 것처럼(일종의 재설정 상태) 안정적인 기본 상태를 설정하는 방법이 있나요? 또한 그 이후에는 일부 Python 기반 사용자 프로그램이 실행되지 않습니다.
이 문제가 발생했을 때 현지화할 수 없습니다. 다음에서는 내 시스템에 대한 몇 가지 분석을 제시합니다.
패킷 관리(apt-get install)를 사용하여 일부 중지된 프로그램 설치가 시스템 전체 /usr/bin/python2 -> python2.7을 덮어쓰는 것을 확인했지만 이는 거부되었습니다. 나는 이것이 python-gtk2 종속성을 통해 발생하고 있다고 강하게 의심합니다. 몇 주 전에 발생한 이 오류/메시지는 단독이었기 때문입니다. 문제를 해결하려고 노력하면서 python-enchant에 대한 새로운 메시지를 받았습니다.
유용한 아이디어에 미리 감사드립니다.
------내 시스템(죄송하지만 독일 현지화입니다)
user@mymachine:~$ **lsb_release -a**
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.2 LTS
Release: 20.04
Codename: focal
사용자@내머신:~$sudo 스냅 목록
Name Version Revision Tracking Herausgeber Hinweise
core 16-2.49.2 10958 latest/stable canonical? core
core18 20210309 1997 latest/stable canonical? base
go 1.16.3 7360 latest/stable mwhudson classic
gtk-common-themes 0.1-52-gb92ac40 1515 latest/stable canonical? -
gtk2-common-themes 0.1 13 latest/stable canonical? -
------실제 세션 내에서 Python 사용
사용자@내 기계: ~$PS 보조 | 그렙 파이썬
root 1213 0.0 0.0 39732 14776 ? Ss Mai02 0:00 /usr/bin/python3 /usr/bin/networkd-dispatcher --run-startup-triggers
root 1601 0.0 0.1 118480 16892 ? Ssl Mai02 0:00 /usr/bin/python3 /usr/share/unattended-upgrades/unattended-upgrade-shutdown --wait-for-signal
user 3120 0.0 0.1 435708 27452 ? Sl Mai02 0:00 /usr/bin/python3 /usr/bin/blueman-applet
user 3125 0.0 0.1 65492 32024 ? S Mai02 0:00 /usr/bin/python3 /usr/share/system-config-printer/applet.py
user 3245 0.0 0.1 360956 28980 ? Sl Mai02 0:00 /usr/bin/python3 /usr/bin/blueman-tray
user 22367 0.0 0.0 9412 672 pts/4 S+ 10:39 0:00 grep --color=auto python
*------sudo apt-upgrade 또는 패킷 설치 후.deb 또는 sudo apt-get install 종속성 문제 메시지가 표시됩니다.
Die folgenden Pakete haben unerfüllte Abhängigkeiten:
python-enchant : Hängt ab von: python:any (>= 2.7.5-5~)
Hängt ab von: python:any (< 2.8)
python-gtk2 : Hängt ab von: python (>= 2.7)
Hängt ab von: python (< 2.8)
python-gtksourceview2 : Hängt ab von: python (>= 2.7)
Hängt ab von: python (< 2.8)
E: Unerfüllte Abhängigkeiten. Versuchen Sie »apt --fix-broken install« ohne Angabe eines Pakets (oder geben Sie eine Lösung an).
------파이썬 분석 user@mymachine:~$*dpkg -l | 그렙 libpython.최소한의
ii libpython2.7-minimal:amd64 2.7.18-1~20.04 amd64 Minimal subset of the Python language (version 2.7)
ii libpython3.7-minimal:amd64 3.7.5-2~19.10ubuntu1 amd64 Minimal subset of the Python language (version 3.7)
ii libpython3.8-minimal:amd64 3.8.5-1~20.04 amd64 Minimal subset of the Python language (version 3.8)
사용자@내머신:~$sudo apt-cache --installed -i --recurse rdependents libpython3.8-minimal | grep "^" | sort -u |xargs apt-mark 자동
apport wurde bereits auf automatisch installiert gesetzt.
aptdaemon wurde bereits auf automatisch installiert gesetzt.
apturl-common wurde bereits auf automatisch installiert gesetzt.
command-not-found wurde bereits auf automatisch installiert gesetzt.
gdb wurde bereits auf automatisch installiert gesetzt.
gir1.2-peas-1.0 wurde bereits auf automatisch installiert gesetzt.
gnome-software-plugin-snap wurde bereits auf automatisch installiert gesetzt.
ibus wurde bereits auf automatisch installiert gesetzt.
Markierung für ibus:i386 kann nicht gesetzt werden, da es nicht installiert ist.
language-selector-common wurde bereits auf automatisch installiert gesetzt.
Markierung für libglib2.0-dev-bin:i386 kann nicht gesetzt werden, da es nicht installiert ist.
libpeas-1.0-0 wurde bereits auf automatisch installiert gesetzt.
libpurple-bin wurde bereits auf automatisch installiert gesetzt.
libpython3.8 wurde bereits auf automatisch installiert gesetzt.
libpython3.8-stdlib wurde bereits auf automatisch installiert gesetzt.
libpython3-stdlib wurde bereits auf automatisch installiert gesetzt.
libsmbclient wurde bereits auf automatisch installiert gesetzt.
netplan.io wurde bereits auf automatisch installiert gesetzt.
networkd-dispatcher wurde bereits auf automatisch installiert gesetzt.
onboard-common wurde bereits auf automatisch installiert gesetzt.
onboard-data wurde bereits auf automatisch installiert gesetzt.
printer-driver-foo2zjs-common wurde bereits auf automatisch installiert gesetzt.
printer-driver-postscript-hp wurde bereits auf automatisch installiert gesetzt.
python3.8 wurde bereits auf automatisch installiert gesetzt.
python3.8-minimal wurde bereits auf automatisch installiert gesetzt.
python3-apport wurde bereits auf automatisch installiert gesetzt.
python3-apsw wurde bereits auf automatisch installiert gesetzt.
python3-apt wurde bereits auf automatisch installiert gesetzt.
python3-aptdaemon wurde bereits auf automatisch installiert gesetzt.
python3-aptdaemon.gtk3widgets wurde bereits auf automatisch installiert gesetzt.
python3-cairo wurde bereits auf automatisch installiert gesetzt.
python3-cffi-backend wurde bereits auf automatisch installiert gesetzt.
python3-chm wurde bereits auf automatisch installiert gesetzt.
python3-commandnotfound wurde bereits auf automatisch installiert gesetzt.
python3-crypto wurde bereits auf automatisch installiert gesetzt.
python3-cryptography wurde bereits auf automatisch installiert gesetzt.
python3-cssselect wurde bereits auf automatisch installiert gesetzt.
python3-cups wurde bereits auf automatisch installiert gesetzt.
python3-cupshelpers wurde bereits auf automatisch installiert gesetzt.
python3-dbus wurde bereits auf automatisch installiert gesetzt.
python3-debianbts wurde bereits auf automatisch installiert gesetzt.
python3-distupgrade wurde bereits auf automatisch installiert gesetzt.
python3-gdbm wurde bereits auf automatisch installiert gesetzt.
python3-gi wurde bereits auf automatisch installiert gesetzt.
python3-gi-cairo wurde bereits auf automatisch installiert gesetzt.
python3-gpg wurde bereits auf automatisch installiert gesetzt.
python3-html5-parser wurde bereits auf automatisch installiert gesetzt.
python3-ibus-1.0 wurde bereits auf automatisch installiert gesetzt.
python3-keyring wurde bereits auf automatisch installiert gesetzt.
python3-launchpadlib wurde bereits auf automatisch installiert gesetzt.
python3-lazr.restfulclient wurde bereits auf automatisch installiert gesetzt.
python3-ldb wurde bereits auf automatisch installiert gesetzt.
python3-lxml wurde bereits auf automatisch installiert gesetzt.
python3-minimal wurde bereits auf automatisch installiert gesetzt.
python3-msgpack wurde bereits auf automatisch installiert gesetzt.
python3-nacl wurde bereits auf automatisch installiert gesetzt.
python3-netifaces wurde bereits auf automatisch installiert gesetzt.
python3-numpy wurde bereits auf automatisch installiert gesetzt.
python3-oauthlib wurde bereits auf automatisch installiert gesetzt.
python3-odf wurde bereits auf automatisch installiert gesetzt.
python3-pil wurde bereits auf automatisch installiert gesetzt.
python3-psutil wurde bereits auf automatisch installiert gesetzt.
python3-pycurl wurde bereits auf automatisch installiert gesetzt.
python3-pymacaroons wurde bereits auf automatisch installiert gesetzt.
python3-pyqt5.qtsvg wurde bereits auf automatisch installiert gesetzt.
python3-pyqt5.qtwebchannel wurde bereits auf automatisch installiert gesetzt.
python3-pyqt5.qtwebengine wurde bereits auf automatisch installiert gesetzt.
python3-pysimplesoap wurde bereits auf automatisch installiert gesetzt.
python3-regex wurde bereits auf automatisch installiert gesetzt.
python3-renderpm wurde bereits auf automatisch installiert gesetzt.
python3-reportlab wurde bereits auf automatisch installiert gesetzt.
python3-reportlab-accel wurde bereits auf automatisch installiert gesetzt.
python3-samba wurde bereits auf automatisch installiert gesetzt.
python3-sane wurde bereits auf automatisch installiert gesetzt.
python3-secretstorage wurde bereits auf automatisch installiert gesetzt.
python3-setuptools wurde bereits auf automatisch installiert gesetzt.
python3-simplejson wurde bereits auf automatisch installiert gesetzt.
python3-software-properties wurde bereits auf automatisch installiert gesetzt.
python3-systemd wurde bereits auf automatisch installiert gesetzt.
python3-talloc wurde bereits auf automatisch installiert gesetzt.
python3-tdb wurde bereits auf automatisch installiert gesetzt.
python3-tk wurde bereits auf automatisch installiert gesetzt.
python3-uno wurde bereits auf automatisch installiert gesetzt.
python3-update-manager wurde bereits auf automatisch installiert gesetzt.
python3-urwid wurde bereits auf automatisch installiert gesetzt.
python3-webob wurde bereits auf automatisch installiert gesetzt.
python3-yaml wurde bereits auf automatisch installiert gesetzt.
python-apt-common wurde bereits auf automatisch installiert gesetzt.
python-odf-tools wurde bereits auf automatisch installiert gesetzt.
samba-common-bin wurde bereits auf automatisch installiert gesetzt.
samba-dsdb-modules wurde bereits auf automatisch installiert gesetzt.
samba-libs wurde bereits auf automatisch installiert gesetzt.
system-config-printer-common wurde bereits auf automatisch installiert gesetzt.
system-config-printer-udev wurde bereits auf automatisch installiert gesetzt.
ubuntu-advantage-tools wurde bereits auf automatisch installiert gesetzt.
ubuntu-release-upgrader-core wurde bereits auf automatisch installiert gesetzt.
unattended-upgrades wurde bereits auf automatisch installiert gesetzt.
virtualbox-qt wurde bereits auf automatisch installiert gesetzt.
xserver-xorg wurde bereits auf automatisch installiert gesetzt.
Markierung für xserver-xorg-hwe-16.04 kann nicht gesetzt werden, da es nicht installiert ist.
E: Could not create temporary file for /var/lib/apt/extended_states - mkstemp (13: Keine Berechtigung)
E: Temporäres StateFile /var/lib/apt/extended_states konnte nicht geschrieben werden.
사용자@내 기계: ~$apt-cache rdependents -i --installed --recurse python2 | grep -v " " | 정렬 -u
calibre
font-manager
gimp
meld
nautilus-dropbox
ocrfeeder
python2
python-apsw
python-cairo
python-cffi-backend
python-crypto
python-cryptography
python-dbus
python-gi
python-gobject
python-gobject-2
python-gtk2
python-gtksourceview2
python-libxml2
python-lxml
python-netifaces
python-numpy
python-openssl
python-pil
python-simplejson
python-sip
python-tk
python-yaml
scribus
scribus-data
사용자@내 기계: ~$ls -al /usr/bin/python*
lrwxrwxrwx 1 root root 24 Feb 24 14:48 /usr/bin/python -> /etc/alternatives/python
lrwxrwxrwx 1 root root 9 Feb 24 2020 /usr/bin/python2 -> python2.7
-rwxr-xr-x 1 root root 3629032 Aug 4 2020 /usr/bin/python2.7
lrwxrwxrwx 1 root root 33 Aug 4 2020 /usr/bin/python2.7-config -> x86_64-linux-gnu-python2.7-config
lrwxrwxrwx 1 root root 9 Mär 13 2020 /usr/bin/python3 -> python3.8
-rwxr-xr-x 2 root root 5102632 Apr 19 2020 /usr/bin/python3.7
-rwxr-xr-x 2 root root 5102632 Apr 19 2020 /usr/bin/python3.7m
-rwxr-xr-x 1 root root 5486352 Jul 28 2020 /usr/bin/python3.8
--- 업데이트 01 ---
안녕하세요, 여기에서 sudo apt -f install의 전체 출력을 제공합니다.
보시다시피, 시스템 전체 Python 버전(2.7.17-1)이 잠겨 있지 않으며 이 패키지로 업데이트해야 합니다: python-is-python2_2.7.17-4_all.deb
user@mymachine: ~$ sudo apt -f install
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
Abhängigkeiten werden korrigiert ... Fertig
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
gcc-9-base:i386 geoip-database libapt-pkg5.90 libart-2.0-2 libbind9-161
libbonobo2-0 libbonobo2-common libbonoboui2-0 libbonoboui2-common
libboost-date-time1.67.0 libboost-iostreams1.67.0 libboost-locale1.67.0
libboost-thread1.67.0 libbrlapi0.6 libcodec2-0.8.1 libdns-export1104
libdns1104 libdns1109 libdvdread4 libevent-2.1-6 libevent-core-2.1-6
libevent-pthreads-2.1-6 libexiv2-14 libffi6 libffi6:i386 libfluidsynth1
libgeoip1 libgnome-2-0 libgnome-desktop-3-18 libgnome2-0 libgnome2-bin
libgnome2-common libgnomecanvas2-0 libgnomecanvas2-common libgnomeui-0
libgnomeui-common libgnomevfs2-0 libgnomevfs2-common libgsoap-2.8.75
libgspell-1-1 libgutenprint-common libgutenprint9 libhogweed4
libhogweed4:i386 libicu63 libicu63:i386 libidl-2-0 libilmbase23 libiptc0
libirs161 libisc-export1100 libisc1100 libisc1105 libisccc161 libisccfg163
libisl21 libjte1 libllvm9 liblouis17 liblwres161 libmypaint-1.3-0 libmysofa0
libnettle6 libnettle6:i386 libnfs12 liboauth0 libopenexr23 liborbit-2-0
liborbit2 liborcus-0.14-0 libpangox-1.0-0 libplymouth4 libpoppler90
libpython-stdlib libpython3.7 libpython3.7-minimal libpython3.7-stdlib
libqpdf21 libusbmuxd4 libwnck-common libwnck22 libx265-176
linux-headers-5.3.0-62 linux-headers-5.3.0-62-generic
linux-image-5.3.0-62-generic linux-modules-5.3.0-62-generic
linux-modules-extra-5.3.0-62-generic node-is-builtin-module node-node-uuid
printer-driver-gutenprint python-blinker python-certifi python-crypto
python-httplib2 python-idna python-minimal python-pyasn1
python-pyasn1-modules python-tz python-xdg python3-asn1crypto python3-nacl
python3-pymacaroons python3.7 python3.7-minimal
Verwenden Sie »sudo apt autoremove«, um sie zu entfernen.
Die folgenden zusätzlichen Pakete werden installiert:
python-is-python2
Die folgenden NEUEN Pakete werden installiert:
python-is-python2
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 220 nicht aktualisiert.
5 nicht vollständig installiert oder entfernt.
Es müssen noch 0 B von 2.496 B an Archiven heruntergeladen werden.
Nach dieser Operation werden 10,2 kB Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren? [J/n] j
(Lese Datenbank ... 376668 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../python-is-python2_2.7.17-4_all.deb ...
Entpacken von python-is-python2 (2.7.17-4) ...
dpkg: Fehler beim Bearbeiten des Archivs /var/cache/apt/archives/python-is-pytho
n2_2.7.17-4_all.deb (--unpack):
Versuch, »/usr/bin/python« zu überschreiben, welches auch in Paket python-minim
al 2.7.17-1 ist
Fehler traten auf beim Bearbeiten von:
/var/cache/apt/archives/python-is-python2_2.7.17-4_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
--- 업데이트 02 ---
설치후보자(2.7.12-1~16.04)는 어떻게 변경하나요? 잘못된 소스라서 문제가 될 수도 있나요?
sudo apt-cache policy python
python:
Installiert: (keine)
Installationskandidat: 2.7.12-1~16.04
Versionstabelle:
2.7.17-1 -1
100 /var/lib/dpkg/status
2.7.12-1~16.04 500
500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages