因此,上周我犯了一个愚蠢的错误,在我的Ubuntu20.04上安装了错误的Nvidia驱动程序,基本上GUI就坏了。然而,我想,我最终能够解决这个问题。
现在,每当我尝试使用包管理器( apt-get )时,我得到以下错误:这是在运行'sudo apt- get upgrade‘之后
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
libnvidia-ifr1-460 : Depends: libnvidia-gl-460 but it is not installed
libnvidia-ifr1-460:i386 : Depends: libnvidia-gl-460:i386 but it is not installed
nvidia-driver-460 : Depends: libnvidia-gl-460 (= 460.32.03-0ubuntu0.20.04.1) but it is not
installed
Recommends: libnvidia-gl-460:i386 (= 460.32.03-0ubuntu0.20.04.1)
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a
solution).
因此,我尝试了它的建议,并运行了'sudo apt --fix-broken install‘。并输出以下错误:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following additional packages will be installed:
libnvidia-gl-460 libnvidia-gl-460:i386
The following NEW packages will be installed:
libnvidia-gl-460 libnvidia-gl-460:i386
0 upgraded, 2 newly installed, 0 to remove and 8 not upgraded.
25 not fully installed or removed.
Need to get 0 B/99,7 MB of archives.
After this operation, 353 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 249076 files and directories currently installed.)
Preparing to unpack .../libnvidia-gl-460_460.32.03-0ubuntu0.20.04.1_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
-460'
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-460_460.32.0
3-0ubuntu0.20.04.1_i386.deb (--unpack):
new libnvidia-gl-460:i386 package pre-installation script subprocess returned e
rror exit status 2
Preparing to unpack .../libnvidia-gl-460_460.32.03-0ubuntu0.20.04.1_amd64.deb ..
.
diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/x86_64-linux-gnu/l
ibGL.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-460'
found 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/x86_64-li
nux-gnu/libGL.so.1.distrib by nvidia-340'
dpkg: error processing archive /var/cache/apt/archives/libnvidia-gl-460_460.32.0
3-0ubuntu0.20.04.1_amd64.deb (--unpack):
new libnvidia-gl-460:amd64 package pre-installation script subprocess returned
error exit status 2
Errors were encountered while processing:
/var/cache/apt/archives/libnvidia-gl-460_460.32.03-0ubuntu0.20.04.1_i386.deb
/var/cache/apt/archives/libnvidia-gl-460_460.32.03-0ubuntu0.20.04.1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
所以在我看来,它仍然与那些旧的nvidia-340驱动程序有问题。以前有没有人遇到过这个问题,或者知道如何修复它?
如果你需要更多的信息,请告诉我。
提前感谢!
发布于 2021-02-01 17:46:44
您好,您应该删除/usr/lib/i386-linux-gnu/libGL.so.1
sudo dpkg-divert --remove "/usr/lib/i386-linux-gnu/libGL.so.1"
sudo apt --fix-broken install
如果您在不同的库中遇到相同的错误,例如: libGL.so和libEGL.so,请执行相同的命令:
sudo dpkg-divert --remove "/usr/lib/i386-linux-gnu/libGL.so"
sudo dpkg-divert --remove "/usr/lib/x86_64-linux-gnu/libEGL.so"
sudo apt --fix-broken install
https://stackoverflow.com/questions/65697784
复制相似问题