Nvidia グラフィックカードのドライバ(古くなったカードも使えます)
1.はじめに
昨年末、久しぶりにアップーでとして、カーネルも再構成されたので再起動したら、init-ramfs? の表示後、真っ黒な画面が出て、そこからどうしても、いつまで経っても先に進まないのだ。
コンソール文字も表示されないため、グラフィックカードの不具合を疑い、早速 ArchWikiを見に行ったら、Wikiの体裁が大幅に変更されており、また私の使用しているグラフィックカードのドライバが提供されなくなった?ようなのだ。
2.Nvidia のQuadro M2000 と Quadro K2200 のドライバ
- 起動メディアで立ち上げ、x-windows-system 関係と nvidia ドライバ、 sfce4 関係のアンインストールと再インストールを何度か繰り返したが、やはり症状は改善しなかった。
- Nouveau を使用したときに、 それなりに表示されたが、複数のモニターを認識しなかったり、表示が遅いなどの症状が見られた。
- nvidia-settings や nvidia-utils を使えば自動的に改善してくれるかも?と期待したが、改善されなかった。
-
ArchWiki の記載を確かめたが、
- Nvidia が一部のグラフィックカードのドライバ提供を中止したため、nvidia-open というパッケージを配布し始めたこと。
- Qaudro M2000 や K2200 には、従来のパッケージ nvidia が使えるように読めた。
GPU ファミリ ドライバ 状態 Maxwell (NV110/GMXXX) から
Ada Lovelace (NV190/ADXXX)linux には nvidia
linux-lts には nvidia-lts
nvidia-dkms は任意のカーネルで使えます現行。サポートあり。1 DKMS 版は特定のカーネルと結びついていません。カーネルのヘッダーファイルをインストールすると、そのカーネル用の NVIDIA カーネルモジュールをコンパイルし直すためです。
ArchWikiより
-
jounalctl | grep nvidia を実行すると、以下のような記録も残っていた。これによると、渡した使用しているグラフィックカードは Nvidia590 ( nvidia-open のバージョン)ではサポートされておらず、それ以前の 580 でサポートされていることがわかった。
[ 14.678] (WW) NVIDIA(0): The NVIDIA Quadro M2000 GPU installed in this system is
[ 14.678] (WW) NVIDIA(0): supported through the NVIDIA 580.xx Legacy drivers. Please
[ 14.678] (WW) NVIDIA(0): visit http://www.nvidia.com/object/unix.html for more
[ 14.678] (WW) NVIDIA(0): information. The 590.48.01 NVIDIA driver will ignore this
[ 14.678] (WW) NVIDIA(0): GPU. Continuing probe...
[ 14.678] (WW) NVIDIA(0): The NVIDIA Quadro K2200 GPU installed in this system is
[ 14.678] (WW) NVIDIA(0): supported through the NVIDIA 580.xx Legacy drivers. Please
[ 14.678] (WW) NVIDIA(0): visit http://www.nvidia.com/object/unix.html for more
[ 14.678] (WW) NVIDIA(0): information. The 590.48.01 NVIDIA driver will ignore this
[ 14.678] (WW) NVIDIA(0): GPU. Continuing probe...
[ 14.678] (EE) Please also check the log file at "/home/user/.local/share/xorg/Xorg.0.log" for additional information.
-
それではと nvidia の580 バージョンのドライバを探したところ、 AUR に見つけた。

3.Nvidia-580-dkmsのインストール
$ yay -S opencl-nvidia-580xx
とやったが、特に何も起きない。
良く見ると、nvidia-580xx-dkms は NVIDIA kernel modules - module sources (580xx) とあって、ドライバ自体ではなく、カーネルの再構築をするためのモジュールということだ。
それではと kernel-headers をインストールした
$ yay -S linux-headers
:: Running post-transaction hooks...
(1/3) Arming ConditionNeedsUpdate...
(2/3) Updating module dependencies...
(3/3) Install DKMS modules
==> dkms install --no-depmod nvidia/580.119.02 -k 6.18.2-arch2-1
==> depmod 6.18.2-arch2-1
インストールしたkernel-headersを頼りに、これに適したドライバをビルドし始めた。
これが終了したのを確認して、再起動
4.現在の状況
(1)ドライバの読み込み状況
以下のようにドライバを読み込んでいる。
$ lsmod | grep nvidia
nvidia_drm 147456 8
nvidia_uvm 3858432 0
nvidia_modeset 1933312 10 nvidia_drm
drm_ttm_helper 16384 1 nvidia_drm
nvidia 111591424 140 nvidia_uvm,nvidia_drm,nvidia_modeset
video 81920 1 nvidia_modeset
(2)起きている現象
以前同様、モニターから出力が得られるようになったのだが、やたら画面がちらつくようになったように感じる。
ターミナル や Google-Crome の表示がちらついて、時々背景の画像が出現するのだ。それでもプライマリーとして設定したモニターはちらつきがないようだが!
情報を集め、改善が認められたら報告します。