新調したゲーミングPCのグラフィックボードのドライバをインストールする

前回でやっとこさwifiの設定ができたので、いよいよグラフィックボードのドライバをインストールしていきたいと思います。

NVIDIAドライバをダウンロードする

NVIDIAのサイトでドライバをダウンロードします。
私のPCのグラフィックボードはGeForce GTX 1660 Ti(6GB)というものなので、下の画像のように検索してみました。

検索結果の一番上にある最新のドライバをダウンロード。

nvidia

製品シリーズのところで、notebookって付いてるけど何なんでしょ?🙄

既存ドライバの確認

ロードされているドライバを確認したいので、inxiをインストールする。

[root@fedora ~]# dnf install inxi

グラフィックボードの情報を表示する。

[root@fedora ~]# inxi -Gx
Graphics:
  Device-1: NVIDIA TU116 [GeForce GTX 1660 Ti] vendor: ZOTAC driver: N/A
    bus-ID: 01:00.0
  Display: server: X.Org 1.20.14 driver: loaded: nouveau,vesa
    unloaded: fbdev,modesetting resolution: 800x600~75Hz
  OpenGL: renderer: llvmpipe (LLVM 13.0.0 256 bits) v: 4.5 Mesa 21.3.6
    direct render: Yes

nouveauとvesaというドライバがロードされている。

既存のドライバを無効にする

nouveauとvesaを無効にしてからNVIDIAのドライバをインストールしようと思います。

下記の記事を参考にしました。解りやすかったので同じ手順でできました😊良かった〜!

📕Fedora34にNVIDIAドライバをインストールした|放置演算子

ここからの詳しい手順については上記記事を見ることにして、要点だけメモします。

私の場合はvesaも無効にするのを忘れずに。

  • udevで無効にする
[root@fedora ~]# vi /etc/modprobe.d/blacklist.conf
lacklist nouveau
blacklist vesa
  • カーネルの起動パラメータでも無効にする
[root@fedora ~]# vi /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="nomodeset rhgb quiet rd.driver.blacklist=nouveau,vesa"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
  • カーネルの起動パラメータを無効にしたものを反映する
grub2-mkconfig -o /boot/grub2/grub.cfg

initramfs.img を展開できなかった

initramfs.imgを生成したあとで、この中にドライバを無効にした設定がちゃんと入っているのかを確認するために下記コマンドを使いましたが、エラーが出てしまいました。

[root@fedora ~]# zcat /boot/initramfs-$(uname -r).img | cpio -idmv -D ./initramfs

gzip: /boot/initramfs-5.16.8-200.fc35.x86_64.img: not in gzip format
cpio: 予期しない書庫終了です

こちらの記事に詳しい原因と展開方法が書いてあったので参照しました。

📕RHEL7 initramfsの展開方法|のぴぴのメモ

私のbinwalkの結果はこんな感じ。

[root@fedora ~]# binwalk /boot/initramfs-$(uname -r).img

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
95232         0x17400         gzip compressed data, maximum compression, from Unix, last modified: 1970-01-01 00:00:00 (null date)
7717215       0x75C15F        xz compressed data

上記コマンドでgzipの開始位置が分かったので、ddコマンドでコピーします。

[root@fedora ~]# dd if=/boot/initramfs-$(uname -r).img of=initramfs.gz bs=95232 skip=1
338+1 レコード入力
338+1 レコード出力
32257628 bytes (32 MB, 31 MiB) copied, 0.0138773 s, 2.3 GB/s

あとは参照先の記事と同じようにすれば、中身が展開されました。
ちゃんと無効の設定が入ってます👌

[root@fedora ~]# cat ramdisk/etc/modprobe.d/blacklist.conf
blacklist nouveau
blacklist vesa

NVIDIAドライバのインストール

引き続き以下の記事で、NVIDIA ドライバのインストールを行いました。

📕Fedora34にNVIDIAドライバをインストールした|放置演算子

これまでずっと変な解像度だったけど、正しい解像度になりました!

installed

nomodesetを削除してみる

このPCに“Fedora KDE Plasma Desktop35”を最初にインストールするとき、KMSというグラフィックボードのための機能にドライバが対応できず、画面がフリーズしてしまう問題が起こっていました。そのため、起動パラメータにnomodesetというオプションを追記して、KMSの機能をOFFにしてずっと起動していました。

今回NVIDIAのドライバをインストールしたので、nomodesetを消してみようと思います。ずっと残してると思わぬトラブルを招きそうなので…。

起動時にfedoraを選択する画面でeキーを押して、カーネルオプションの編集画面を開きます。

前に見たときと違って、nouveauやvesaといったドライバを無効にする設定などが入っているのが見て取れます。

remove-nomodeset

ここにあるnomodesetを削除しました。
再起動してみたところ特に問題なさそうです。

うん、これで良い感じがする🎊

参考

21.6. ブートローダの確認|Fedora Documentation

Linuxでのゲーム? UbuntuにNvidiaドライバーをインストールする方法は次のとおりです|ちらし寿司