# Ubuntu 18.04 に Nvidia を再インストール方法

# 1.まえがき

Ubuntu18.04 は前のバージョンと違い、インストール直後は最新の Nvidia ドライバがすでにインストール済みの状態になっているということで、特に Nvidia のバージョンに要求がないと(Pytorch、tensorflow 等は特定の Nvidia のバージョンを使用しないと)、再インストールのお勧めはいたしません。

この方法は、既有の Nvidia を削除し、希望するバージョンを入り替えるためです。Ubuntu 18.04、Ubuntu 16.04 でテスト済みです。

なお、これらの手順は一例として、参考程度にご覧ください。

# 2.Nvidia ドライバをダウンロード

Nvidia の公式サイトで最近更新のドライバまたは古いバージョンのドライバをダウンロードします。

Pytorch を使用する場合は、CUDA、Nvidia との対応関係は以下に示します。

CUDA ToolkitLinux x86_64 Driver Version
CUDA 9.2 (9.2.88)>= 396.26
CUDA 9.2 (9.2.148 Update 1)>= 396.37 && < 410.48
CUDA 10.1 (10.1.105 general<br> release, and updates)>= 418.39
CUDA 10.2.89>= 440.33
CUDA 11.0.1 RC>= 450.36.06
CUDA 11.0.2 GA>= 450.51.05
CUDA 11.0.3 Update 1>= 450.51.06

Tensorflow を使用する場合は、CPU のみと GPU サポートがあり、CPU のみなら、Nvidia のバージョンにこだわらなくても構いません。ただ、GPU サポートを使うと、ビルド構成は以下のようにお勧めいたします。

バージョンcuDNNCUDANvidia Linux x86_64 Driver Version
tensorflow_gpu-1.13.17.410.0>= 410.48
tensorflow_gpu-1.14.07.410.0>= 410.48
tensorflow-2.0.07.410.0>= 410.48
tensorflow-2.1.07.610.1>= 418.39 && < 440.33

# 3.既有のドライバを削除

$ sudo apt-get purge nvidia* //ドライバの削除
$ sudo apt-get autoremove 
//自動にインストールされたパッケージの中の不要なものを削除

# 4.インストールまでの準備

# 1.開発に必須のビルドツールをインストール

$ sudo apt-get install build-essential gcc-multilib dkms

# 2.Nvidia グラフィックカードを無効に

$ sudo touch /etc/modprobe.d/blacklist-nouveau.conf 
//ファイルを作成

$ sudo gedit /etc/modprobe.d/blacklist-nouveau.conf 
//geditでファイルを編集

以下のように入力

blacklist nouveau
options nouveau modeset=0

保存の後、終了。

# 3.X server をロードする前にビデオドライバーをロードしないようにカーネルを設定

$ sudo gedit /etc/default/grub

GRUB-CMDLINE-LINUX-DEFAULT=“quiet splash“ の splash の後ろに nomodeset を追加。変更された様子は以下に示します。

GRUB-CMDLINE-LINUX-DEFAULT=“quiet splash nomodeset”

# 4. Ubuntu のカーネルを更新

$ sudo update-initramfs -u
$ sudo update-grub2

# 5.フォントライブラリをロード

デフォルト言語は英語でないと、フォントライブラリをロードしたほうがいいです。

$ ls /usr/lib/locale
$ sudo locale-gen --purge --no-archive

# 5.Nvidia ドライバのインストール

$ cd ~/Downloads //ダウンロードされたものはほとんどDownloadsにある
$ ls -la //中身を確認する
$ sudo chmod +x NVIDIA-Linux-x86_64-450.57.run //ファイルに実行権限を与える
$ sudo reboot //再起動
$ cd ~/Downloads
$ sudo ./NVIDIA-Linux-x86_64-450.57.run //インストール
$ sudo reboot //再起動

# 6.確認

nvidia-smi