タイトル通り、ubuntu18.04にNVIDIAドライバをインストールしようとした色々手間取ったので備忘録がてら誰かの助けになれば
※2021年12月において僕はこのようにしてやったらうまくいったというだけでやり方を丁寧に説明するものではないです
環境
- ASUS TUF Dash F15
- GeForce RTX 3070 Laptop
- ubuntu18.04 LTS
参考にさせて頂いたサイト
これらのサイトなどを参考にさせて頂いたのですが、僕の環境ではうまく行きませんでした。
今回はこれらをうまく組み合わせつつ少しいじくった手順です
(とても参考になりました、ありがとうございます)
うまくいった手順
1. Secure Boot(セキュアブート)をDisabledにする
- Biosの設定からSecure Bootをdisabledに設定する
- 詳しいやり方は調べればたくさん出てくると思います
2. gccのインストール
- インストールにはgccがインストールされてなければいけないのでインストールする
$ sudo apt install build-essential
3. nouveauの無効化
- 現在使われているドライバを一度無効化します
-
/etc/modprobe.d/blacklist-nouveau.conf
を新たに作成し以下の二行を書き込み保存する
blacklist nouveau
options nouveau modeset=0
- 以下のコマンドで再読込の後再起動を行う
$ sudo update-initramfs -u
$ reboot
- 再起動後に以下のコマンドでしっかりと無効化されているか確認する
$ lsmod | grep -i nouveau
4. ドライバをダウンロードする
様々なやり方があったが直接ダウンロードしたやり方のみでうまくいきました
- NVIDIA公式から自分の環境にあうように選択して.runファイルをダウンロードしてくる
- 僕の環境では以下のような感じでした
5. GUIをオフにする
注意
ここではGUIを一度無効にするので最後にGUIを再起動するまでこれ以降の手順はすべてCUIで行います
CUIを扱えないのにこの手順を行ってしまうと取り返しのつかないことになってしまうので十分注意してください
また、このサイトを別のPCやスマホなどで閲覧しながらの作業をおすすめします
- 以下のコマンドでDisplay Managerを無効にします
$ systemctl isolate multi-user.target
- すると画面が真っ暗になるのでCtrl + Alt + (f1 or f2 or ...)でCUIでのログイン画面に入ります
- そしてログインした後以下のコマンドで念の為、すでにインストールされているかもしれないNVIDIAドライバをアンインストールしておきます
$ sudo apt --purge autoremove nvidia*
6. ドライバをインストールする
- 3でダウンロードされたrunファイルを実行します
- まず以下のコマンドでrunファイルに実行権限を付与します(ファイル名は適宜よしなにしてください)
$ chmod +x ./NVIDIA-Linux-x86_64-470.94.run
- 以下のコマンドでsudoを用いてrunファイルを実行します
$ sudo sh ./NVIDIA-Linux-x86_64-390.77.run
- 上記のコマンドを実行すると、英語でいくつか選択を求められますが「もっと便利なインストール方法があるけどこの方法で良いの?」的な話などなので、適宜読んで選択すれば問題なく進めるはずです
7. GUIを再起動する
- 無事にインストールが終わったならば最後に以下のコマンドでGUIを再起動します
$ systemctl start graphical.target
- こうして再起動したGUIのターミナルで以下のコマンドで無事インストールできているか確認して終了です!
$ nvidia-smi
最後に
今回は上記の手順で無事にnvidiaドライバをインストールできました。
本来ならば、もっと簡単なコマンドだけでもインストールできるはずだったのですが、最初に載せた参考にさせて頂いたサイトやその他のサイトの手順では、GUIが全く動かなくてCUIのみになってしまったり、nvidia-smiコマンドを使ってもGPUを認識できなかったりといったバグ?が発生しうまくいきませんでした。
時間が経っているのでどこか変わってしまっていたり、環境が異なっていたりするのが原因なのかなと思っています。
同様にこの手順も一年後に違う環境であればうまく行かないこともあると思うので悪しからずお願いします。