web-dev-qa-db-ja.com

Ubuntu 18.04の適切なアップグレード後のNVIDIAドライバーの問題

Aptのアップグレード後に問題が発生し、次のメッセージが表示されます。

 The following packages have unmet dependencies.
 libnvidia-ifr1-390 : Depends: libnvidia-gl-390 but it is not installed
 libnvidia-ifr1-390:i386 : Depends: libnvidia-gl-390:i386 but it is not installed
 nvidia-driver-390 : Depends: libnvidia-gl-390 (= 390.87-0ubuntu0~gpu18.04.1) but it is not installed
                     Recommends: libnvidia-gl-390:i386 (= 390.87-0ubuntu0~gpu18.04.1)
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

その後、apt --fix-broken installを試しますが、次のようになります:

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.87-0ubuntu0~gpu18.04.1_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.87-0ubuntu0~gpu18.04.1_AMD64.deb ...
diversion of /usr/lib/x86_64-linux-gnu/libGL.so to /usr/lib/x86_64-linux-gnu/libGL.so.distrib by nvidia-340
dpkg-divert: error: mismatch on package
  when removing 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so by libnvidia-gl-390'
  found 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so to /usr/lib/x86_64-linux-gnu/libGL.so.distrib by nvidia-340'
dpkg: error processing archive /var/cache/apt/archives/libnvidia-gl-390_390.87-0ubuntu0~gpu18.04.1_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.87-0ubuntu0~gpu18.04.1_i386.deb
 /var/cache/apt/archives/libnvidia-gl-390_390.87-0ubuntu0~gpu18.04.1_AMD64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

それから buntu 18.04 LTSでこのapt問題を修正する方法?

Sudo rm /var/cache/apt/archives/libnvidia-gl-390_390.87-0ubuntu0~gpu18.04.1_i386.deb
Sudo rm /var/cache/apt/archives/libnvidia-gl-390_390.87-0ubuntu0~gpu18.04.1_AMD64.deb

キャッシュ内のダウンロードしたファイルをすべて消去します。

Sudo apt-get clean
Sudo apt-get autoremove && Sudo apt-get autoclean

そして再び私は得た:

The following packages have unmet dependencies.
 libnvidia-ifr1-390 : Depends: libnvidia-gl-390 but it is not installed
 libnvidia-ifr1-390:i386 : Depends: libnvidia-gl-390:i386 but it is not installed
 nvidia-driver-390 : Depends: libnvidia-gl-390 (= 390.87-0ubuntu0~gpu18.04.1) but it is not installed
                     Recommends: libnvidia-gl-390:i386 (= 390.87-0ubuntu0~gpu18.04.1)
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

3週間前にubuntuをバージョン16.04から18.04に更新しましたが、この問題は2日前に現れました。

誰でも助けることができますか?

2
lakyller

ほとんどの場合、正しくインストールされていません。私はおそらく依存関係のないパッケージを削除します:

Sudo dpkg -r libnvidia-ifr1-390
Sudo dpkg -r libnvidia-ifr1-390:i386
Sudo dpkg -r nvidia-driver-390

これらのコマンドを使用するとapt-getが解放され、依存関係をインストールしてドライバーを再インストールできるようになります(依存関係は自動的にインストールされます)。

Sudo apt-get install nvidia-driver-390

また、同じことが再び発生する場合は、これを試してください:(リストされた依存関係とドライバーがインストールされます)

Sudo apt-get install libnvidia-gl-390:i386
Sudo apt-get install libnvidia-gl-390
Sudo apt-get install nvidia-driver-390

または、これ:(これは、Nvidiaに関連してインストールされているものをすべてアンインストールおよびパージし、ドライバーをインストールすると同時に、パッケージのローカルコピーを削除して再度ダウンロードします)

Sudo apt-get clean
Sudo apt-get purge nvidia*
Sudo apt-get autoremove --purge
Sudo apt-get install nvidia-driver-390
5
Zekro Kalt