Po uruchomieniu sudo apt-get upgrade
pojawia się błąd dpkg i przerywa proces.
Szczegóły błędu:
Setting up python-minimal (2.7.3-0ubuntu7.1) ...
Traceback (most recent call last):
File "/usr/local/lib/python2.7/runpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/local/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/local/lib/python2.7/compileall.py", line 16, in <module>
import struct
File "/usr/local/lib/python2.7/struct.py", line 1, in <module>
from _struct import *
ImportError: No module named _struct
dpkg: error processing python-minimal (--configure):
subprocess installed post-installation script returned error exit status 255
dpkg: dependency problems prevent configuration of python:
python depends on python-minimal (= 2.7.3-0ubuntu7.1); however:
Package python-minimal is not configured yet.
Problem ten prowadzi do szeregu problemów związanych z zależnościami podczas przetwarzania następujących pakietów:
python
gwibber-service
libgwibber3
libgwibber-gtk3
gwibber
gwibber-service-facebook
gwibber-service-identica
gwibber-service-twitter
python-all
python-dev
python-all-dev
python-apt
python-problem-report
python-apport
python-libxml2
unity-lens-gwibber
unity-scope-video-remote
Wreszcie nic nie mogę zrobić z tym problemem. A kilka dni później katalog główny jest pełny i nawet nie mogłem odinstalować żadnego oprogramowania z powodu tego problemu.
/usr/bin/python
dowiązanie symboliczne, aby wskazywało,python3.5
i spowodowało to bardzo podobny błąd do tego. Nie jestem pewien, dlaczego, prawdopodobnie ma to związek z tym,python2.7
że już zdążyłem zepsuć się, gdy zmieniłem dowiązanie symboliczne bez ostrzeżenia. IDK, pozostawiając to tutaj dla przyszłych podróżnikówOdpowiedzi:
Postępuj zgodnie z rozwiązaniem Soroosh. Uszkodzony Python (2.7) po ręcznym zbudowaniu i zainstalowaniu Pythona 2.6
Wprowadź,
sudo -i
aby uzyskać dostęp do konta root.Wklej polecenie i poczekaj około 20 minut. Działa idealnie.
źródło
OK, przeglądając pakiety, zauważyłem, że python-minimal nie ma struct.py, ale python-minimal2.7 ma.
Wypróbuj to i sprawdź, czy to ci pomoże:
Jeśli nawet to nie zadziała, być może twój $ PYTHONPATH jest w jakiś sposób pomieszany.
export PYTHONPATH="${PYTHONPATH}:/usr/lib/python2.7"
Następnie dodaj linięI spróbuj jeszcze raz swojej aktualizacji.
źródło
sudo apt-get clean
sudo apt-get update
sudo apt-get upgrade
.clean
,update
aupgrade
następnie próbuję ponownie zainstalowaćpython2.7-minimal
, ale pojawia się ten sam problem zależności i błądreinstall
ponownie.dpkg -l | grep python2.7-minimal
Spróbuj tego
Usunąłem python2.7 i 3.7, a następnie usunąłem powiązane pliki z systemu. Po tym stwierdziłem, że nie mogę ponownie zainstalować Python2.7 Próbowałem wielu metod, które nadal nie działają, w tym:
Następnie znalazłem kilka plików libpython, przeszukując cały system w języku Python (nie masz rm plików z katalogu, jeśli nie jesteś pewien). Po usunięciu
libpython*
pakietów (usunąłem je jeden po drugim), Python został zainstalowany pomyślnie.Mam nadzieję, że może to pomóc niektórym ludziom mieć takie same problemy
źródło
Nie wiem, czy to ci w ogóle pomoże, to trochę kłopoty w ciemności, ale upewnij się, że domyślna wersja Pythona jest ustawiona na 2.7.
W katalogu / usr / bin znajdują się trzy ważne pliki:
Jeśli to zrobisz
ls -l /usr/bin | grep python
, zobaczysz, na co wskazuje każde dowiązanie symboliczne.Jeśli to pokazuje
python -> python3
lubpython -> python3.3
coś jest nie tak. W tym momencie będziesz chciał:źródło
/usr/bin
,python
jest miękki związanapython2.7
.python3.5
, i zniszczyło ogromną liczbę pakietów Pythona, aapt
także. Dlaczego nie mogę domyślnie używać Python3? Jaka jest właściwa droga?