Dupa o face-eliberare-upgrade
pentru a trece de la 16.04 la 18.04, ceva a eșuat și mașina a fost lăsată într-o stare „între”, cu o mulțime de probleme de dependențe rupte. Arborele meu de pachete este o mizerie, sunt disperat... ;-)
Am încercat o mulțime de lucruri (inclusiv dpkg --configure -a
, eliminând aleatoriu pachetele cu dpkg --force depends -P <nume-pkg>
, plus alte lucruri), dar sunt cam blocat în prezent.
Deci, când încerc:
$ sudo apt --fix-broken install
Citirea listelor de pachete... Gata
Construirea arborelui de dependență
Citirea informațiilor despre stare... Gata
Corectarea dependențelor... Gata
Următoarele pachete au fost instalate automat și nu mai sunt necesare:
(aici 20 de rânduri)
Următoarele pachete suplimentare vor fi instalate:
... (aici 5 rânduri)
Pachete sugerate:
... Mai mult
Pachete recomandate:
... Mai mult
Următoarele pachete vor fi ȘTERSE:
... Mai mult
Următoarele pachete NOI vor fi instalate:
... mai mult (10 linii)
28 au fost actualizate, 6 nou instalate, 1 de eliminat și 327 nu au fost actualizate.
228 nu este complet instalat sau demontat.
Trebuie să obțineți 0 B/13,3 MB de arhive.
După această operațiune, se vor utiliza 2â¯771 kB spațiu suplimentar pe disc.
Doriți să continuați? [Da/nu]
Până aici, nu mă tem de nimic. Dar acum, intrând Y
:
Extragerea șabloanelor din pachete: 100%
(Se citesc baza de date... 977800 de fișiere și directoare instalate în prezent.)
Se elimină ubuntu-advantage-tools (27.0.2~18.04.1)...
Traceback (cel mai recent apel ultimul):
Fișierul „<șir>”, linia 2, în <modul>
Fișierul „/usr/lib/python3/dist-packages/uaclient/apt.py”, linia 9, în <modul>
din uaclient import gpg
Fișierul „/usr/lib/python3/dist-packages/uaclient/gpg.py”, linia 3, în <modul>
import shutil
ModuleNotFoundError: Niciun modul numit „shutil”
dpkg: eroare de procesare a pachetului ubuntu-advantage-tools (--remove):
instalat pachetul ubuntu-advantage-tools subprocesul de script pre-eliminare a returnat eroare starea de ieșire 1
Au fost întâlnite erori în timpul procesării:
ubuntu-advantage-tools
E: Sub-procesul /usr/bin/dpkg a returnat un cod de eroare (1)
Deci asta sună ca o eroare Python, din câte am înțeles, nu poate găsi shutil
.
Așa că am descărcat manual ceea ce credeam că este chestia:
https://packages.ubuntu.com/bionic/python-backports-shutil-get-terminal-size
și instalat manual cu:
dpkg -i sudo dpkg -i python-backports-shutil-get-terminal-size_1.0.0-5_all.deb
Dar făcând apt --fix-broken install
din nou ajunge în același punct.
Am cunoștințe limitate cu Python, așa că nu pot fi sigur că aceasta este problema reală, dar orice ajutor este binevenit. În rest, următorul pas va fi probabil reinstalarea de la zero, dar chiar aș prefera să evit asta.
În prezent, pot instala manual pachete (descărcare de pe https://packages.ubuntu.com/ atunci dpkg -i
) dar cam atât, totul eșuează.
De exemplu, dacă încerc să instalez libpython3.6-stdlib
:
$ sudo apt-get install libpython3.6-stdlib
Eu iau:
libpython3.6-stdlib : Depinde: libpython3.6-minimal (= 3.6.9-1~18.04ubuntu1.4) dar 3.6.13-1+xenial2 urmează să fie instalat
ceea ce înseamnă că eu încă au pachete din 16.04 (Xenial).
Cum pot manual elimina toate pachetele 16.04?
Informații suplimentare (mașina pornește acum doar cu o consolă):
$ python --version
=> Python 3.6.13
$ lsb_release -a
nu este disponibilă
$ uname -a
îmi spune că este un nucleu 4.15 (care pare în concordanță cu 18.04)