wszystko. Próbuję naprawić system, aby móc zainstalować sterowniki NVIDIA, ale z jakiegoś powodu wydaje się, że utknął. Próbowałem ręcznie usunąć pobrane pliki z
/var/cache/apt/archives/libnvidia-gl-390_390.48-0ubuntu3_i386.deb
/var/cache/apt/archives/libnvidia-gl-390_390.48-0ubuntu3_amd64.deb
... aby umożliwić im ponowne pobranie, ale bezskutecznie. Czy ktoś próbował ostatnio zainstalować te sterowniki 18.04?
~$ sudo apt --fix-broken install
[sudo] password for jarl:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
lib32gcc1 libc6-i386
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
libnvidia-gl-390 libnvidia-gl-390:i386
The following NEW packages will be installed
libnvidia-gl-390 libnvidia-gl-390:i386
0 to upgrade, 2 to newly install, 0 to remove and 4 not to upgrade.
3 not fully installed or removed.
Need to get 0 B/29,1 MB of archives.
After this operation, 147 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 214344 files and directories currently installed.)
Preparing to unpack .../libnvidia-gl-390_390.48-0ubuntu3_i386.deb ...
diversion of /usr/lib/i386-linux-gnu/libGL.so.1 to /usr/lib/i386-linux-gnu/libGL.so.1.distrib by nvidia-340
dpkg-divert: error: mismatch on package
when removing 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1 by libnvidia-gl-390'
found 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1 to /usr/lib/i386-linux-gnu/libGL.so.1.distrib by nvidia-340'
dpkg: error processing archive /var/cache/apt/archives/libnvidia-gl-390_390.48-0ubuntu3_i386.deb (--unpack):
new libnvidia-gl-390:i386 package pre-installation script subprocess returned error exit status 2
Preparing to unpack .../libnvidia-gl-390_390.48-0ubuntu3_amd64.deb ...
diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/x86_64-linux-gnu/libGL.so.1.distrib by nvidia-340
dpkg-divert: error: mismatch on package
when removing 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 by libnvidia-gl-390'
found 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/x86_64-linux-gnu/libGL.so.1.distrib by nvidia-340'
dpkg: error processing archive /var/cache/apt/archives/libnvidia-gl-390_390.48-0ubuntu3_amd64.deb (--unpack):
new libnvidia-gl-390:amd64 package pre-installation script subprocess returned error exit status 2
Errors were encountered while processing:
/var/cache/apt/archives/libnvidia-gl-390_390.48-0ubuntu3_i386.deb
/var/cache/apt/archives/libnvidia-gl-390_390.48-0ubuntu3_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
sudo apt-get clean
i spróbuj ponownie.sudo apt-get clean
samo wciąż się dla mnie dziejeOdpowiedzi:
Znalazłem to polecenie na forach ubuntu, bardzo dobrze ze mną działało:
Biegać:
Pierwsze polecenie usunie wszystkie przekierowane pakiety z
nvidia-340
. Jeśli masz inną wersję „diverting” nvidii, zmień ją; przeczytaj kod błędu, aby dowiedzieć się, która wersja przekierowuje.Źródło: https://ubuntuforums.org/showthread.php?t=2388026&p=13761809#post13761809 Kudos to stutteringp0et2 :)
źródło
awk '{print $3}'
na inny, na przykład musiałem go zmienić naawk '{print $2}'
. Lub możesz zmienić ustawienia regionalne na angielski (for FILE in $(LANG=en dpkg-divert --list | grep nvidia-340 | awk '{print $3}'); do dpkg-divert --remove $FILE; done
).Oto pełna odpowiedź na innym forum
Podstawowym założeniem odpowiedzi jest:
Zakładam, że masz zainstalowany cr * p ze sterownika 340 - co było moim problemem
usuń stare zależności
czysty bałagan - w zależności od zainstalowanego bałaganu dowiedz się, jeśli nie działa od razu;)
zainstaluj nowe zalecane sterowniki
Moja rada:
nie baw się ustawieniami w sterownikach cr * ppy tylko w celu sprawdzenia, czy są zainstalowane :)
źródło
dpkg --force-all
bez powodu! Napotkane aborcje po błędzie mają na celu ochronę integralności systemu zarządzania pakietami i nie należy ich tłumić bez namysłu i uwagi! -1sudo apt install -f
isudo apt upgrade
. pracowałRozwiązałem problem, usuwając przekierowanie nvidii-340. mam nadzieję, że nie muszę używać
nvidia-340
. Oto przykład:Możesz kontynuować usuwanie, gdy masz konflikt.
źródło
Uruchomiłbym apt auto-clean i sprawdziłbym, czy to, co myślę, jest popsutym pakietem.
edytuj: aby odpowiedzieć na twoje drugie pytanie, kiedy zainstalowałem 18.04, innego dnia 390 działało dobrze, ale przejście do 396 było trochę „zabawne”. Naprawiłem to dla mnie.
źródło
Recommends: libnvidia-gl-390:i386 (= 390.48-0ubuntu3) E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
Uruchom najpierw
Rozwiązanie
#for FILE in $(dpkg-divert --list | grep nvidia-340 | awk '{print $3}'); do dpkg-divert --remove $FILE; done
Następnie zainstaluj go z ppa,
to działało dla mnie na Ubuntu 18.04 LTS
źródło