さまざまなフォーラムであらゆる解決策を試しました。現在、Nouveau ドライバーを無効にして Nvidia ドライバーをインストールする方法に困っています。以前の Nvidia、ブラックリスト ファイルなどを消去/削除しようとしましたが、Nouveau を無効にすることができません。
出力のlspci -vnn | grep -i VGA -A 12
lspci: Unable to load libkmod resources: error -12
02:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM107GL [Quadro K620] [10de:13bb] (rev a2) (prog-if 00 [VGA controller])
Subsystem: Hewlett-Packard Company GM107GL [Quadro K620] [103c:1098]
Physical Slot: 2
Flags: bus master, fast devsel, latency 0, IRQ 30
Memory at f2000000 (32-bit, non-prefetchable) [size=16M]
Memory at e0000000 (64-bit, prefetchable) [size=256M]
Memory at f0000000 (64-bit, prefetchable) [size=32M]
I/O ports at 1000 [size=128]
Expansion ROM at f3080000 [disabled] [size=512K]
Capabilities: <access denied>
Kernel driver in use: nouveau
02:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:0fbc] (rev a1)
nouveau もブラックリストに登録しました。Nvidia ドライバーを deb パッケージ経由でインストールしたり、Nvidia ドライバーの Web サイトからダウンロードしたりしてみました。また、noveau によって削除されるように intramfs を更新しました。
私のUbuntuディストリビューションの詳細
Distributor ID: Ubuntu
Description: Ubuntu 16.04.2 LTS
Release: 16.04
Codename: xenial
PS - Mu の最終的な目標は、CUDA ドライバーとツールキットをインストールすることです。
答え1
まず、制限されたリポジトリが有効になっていることを確認します。制限されたリポジトリは /etc/apt/sources.list にあり、おそらく # でコメントアウトされています。行の先頭の # を削除します。次のようなものがあるかもしれません:
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://us.archive.ubuntu.com/ubuntu/ xenial main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial main universe multiverse restricted #Added by software-properties
deb http://us.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial-updates main universe multiverse restricted #Added by software-properties
deb http://security.ubuntu.com/ubuntu xenial-security main restricted
deb-src http://security.ubuntu.com/ubuntu xenial-security main universe multiverse restricted #Added by software-properties
次に、パッケージ インデックスを更新します。
sudo apt-get update
nvidia 375 パッケージは標準リポジトリで入手できる最新のものですが、試してみたい場合は 381 も利用できます。これは、スリープによって引き起こされるアーティファクトの一部を修正しますが、十分にテストされていません。
私のセットアップは Quadro 1000M で、所有している Nvidia 375 パッケージは次のとおりです。
nvidia-375
nvidia-375-dev
nvidia-modprobe
nvidia-opencl-icd-375
nvidia-prime
nvidia-settings
以前にインストールした nvidia パッケージをすべて削除し、/etc/modprobe.d 内のどのファイルにも nvidia のブラックリスト行がないことを確認します。次のコマンド
で上記のすべてをインストールします。
sudo apt-get install nvidia-375 nvidia-375-dev nvidia-modprobe nvidia-opencl-icd-375 nvidia-prime nvidia-settings
再起動して、nvidia ドライバーが使用されているかどうかを確認します。
sudo lshw -C video
/etc/modprobe.d には、nouveau ドライバーをブラックリスト化し、エイリアスを削除する行を含む nvidia-375_hybrid.conf と nvidia-375_hybrid.conf の 2 つのファイルが必要です。/etc/modules に nouveau がないこと、および /etc/rc.local に nouveau をロードするものがないことを確認します。最後に、dmesg 出力を確認します。nouveau は表示されません。
dmesg |grep nouveau
nvidia の dmesg 出力は次のようになります。
$ dmesg |fgrep -i nvidia
[ 1.145050] nvidia: module license 'NVIDIA' taints kernel.
[ 1.150438] nvidia: module verification failed: signature and/or required key missing - tainting kernel
[ 1.154278] nvidia 0000:01:00.0: enabling device (0000 -> 0003)
[ 1.154407] nvidia-nvlink: Nvlink Core is being initialized, major device number 244
[ 1.154417] NVRM: loading NVIDIA UNIX x86_64 Kernel Module 375.39 Tue Jan 31 20:47:00 PST 2017 (using threaded interrupts)
[ 1.155859] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 375.39 Tue Jan 31 19:41:48 PST 2017
[ 1.156840] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[ 14.454118] nvidia-uvm: Loaded the UVM driver in 8 mode, major device number 240
[ 35.821752] nvidia-modeset: Allocated GPU:0 (GPU-821d0db5-a56d-9fdf-72cc-d0eab575873a) @ PCI:0000:01:00.0
最後に、lsmod にはいくつかの nvidia モジュールが含まれ、nouveau は含まれません。
nvidiaドライバがインストールされていれば、Intel cuda .debパッケージをインストールできるはずです。dpkg -i
次に、apt-get を使用して cuda と cuda-toolkit をインストールすると、他の多くの cuda パッケージもインストールされるはずです。
Intel の手順を読んで、CUDA の場所を PATH と LD_LIBRARY_PATH に追加します。
サンプルを cuda インストール ディレクトリから自宅または書き込み権限がある場所にコピーし、make を実行してサンプルをビルドできるようにします。また、g++ がインストールされているものと想定し、build-essential もインストールされている可能性があります。gcc はデフォルトで存在し、16.04 にはコンパイラの適切なバージョン (5) があります。