tout. J'essaie de réparer mon système pour pouvoir installer les pilotes nvidia, mais il semble rester bloqué pour une raison quelconque. J'ai essayé de supprimer manuellement les fichiers téléchargés de
/var/cache/apt/archives/libnvidia-gl-390_390.48-0ubuntu3_i386.deb
/var/cache/apt/archives/libnvidia-gl-390_390.48-0ubuntu3_AMD64.deb
... afin de les laisser télécharger à nouveau, mais en vain. Quelqu'un a-t-il essayé d'installer ces pilotes le 18.04 récemment?
~$ 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)
Trouvé cette commande sur les forums Ubuntu, a très bien fonctionné avec moi:
Courir:
LC_MESSAGES=C dpkg-divert --list '*nvidia-340*' | sed -nre 's/^diversion of (.*) to .*/\1/p' | xargs -rd'\n' -n1 -- Sudo dpkg-divert --remove
Sudo apt --fix-broken install
La première commande supprimera tous les packages déviés de nvidia-340
. Si vous avez une autre version de nvidia "déviation", changez-la; lisez le code d'erreur pour savoir quelle version est en train d'être déviée.
Source: https://ubuntuforums.org/showthread.php?t=2388026&p=13761809#post13761809 bravo à stutteringp0et2 :)
Voici le réponse complète dans un autre forum
La prémisse de base de la réponse est:
Je suppose que vous avez cr * p du pilote 340 installé - ce qui était mon problème
supprimer les anciennes dépendances
LC_MESSAGES=C dpkg-divert --list '*nvidia-340*' | sed -nre 's/^diversion of (.*) to .*/\1/p' | xargs -rd'\n' -n1 -- Sudo dpkg-divert --remove
nettoyer le gâchis - en fonction du gâchis que vous avez installé, trouvez-le s'il ne fonctionne pas immédiatement;)
Sudo dpkg --force-all -P nvidia-390 nvidia-compute-utils-390 nvidia-dkms-390 nvidia-prime nvidia-settings nvidia-opencl-icd-340 nvidia-opencl-icd-384 nvidia-kernel-source-390 nvidia-kernel-common-390 libnvidia-cfg1-390 libnvidia-common-390 libnvidia-compute-390 libnvidia-decode-390 libnvidia-encode-390 libnvidia-fbc1-390 libnvidia-ifr1-390
Sudo apt purge --autoremove '*nvidia*'
Sudo apt-get update
Sudo apt-get upgrade
installer de nouveaux pilotes recommandés
ubuntu-drivers devices
nvidia-settings
Mon conseil est:
ne joue pas avec les paramètres de ce pilote cr * ppy uniquement pour vérifier s’il est installé :)
J'ai résolu le problème en supprimant le détournement de nvidia-340. j'espère que je n'ai pas besoin d'utiliser nvidia-340
. Voici un exemple:
dpkg-divert --package nvidia-340 --remove /usr/lib/i386-linux-gnu/libGL.so.1
Vous pouvez continuer à supprimer chaque fois que vous avez un conflit.
Je voudrais lancer apt auto-clean et voir si c'est ce que je pense qu'il est, un paquet foiré.
Sudo apt auto-clean
Sudo apt update
Sudo apt upgrade
Sudo apt install nvidia-driver-390 libvulkan1
edit: pour répondre à votre autre question, quand j’ai installé 18.04 l’autre jour, 390 marchait bien, mais aller en 396 était un peu "amusant". Cela a résolu le problème pour moi.
Solution #for FILE in $(dpkg-divert --list | grep nvidia-340 | awk '{print $3}'); do dpkg-divert --remove $FILE; done
Puis installez-le à partir de ppa,
Sudo add-apt-repository ppa:graphics-drivers/ppa
Sudo apt update
Sudo apt install nvidia-390