その手の平は尻もつかめるさ

ギジュツ的な事をメーンで書く予定です

CentOS 6.6 上で NVIDIA の GPU (の一部) と共に nouveau 使うと発狂して死ぬ

タイトルの通りです.
CentOS 6.6 の上で NVIDIAGPU の一部のモデルを nouveau と一緒に使うとカーネルパニックを起こして死にます.OS が起動しねえ.
一部というのは確認できた限り

  • GTX 690
  • GTX 590
  • GTX Titan
  • Tesla K20Xm

です.Quadro 系はなぜか大丈夫でした.環境に依る気がする.GeForce 系は軒並み死ぬのではないかと思います.


他の CentOSディストリビューションについては調べてませんがまあ死ぬと思います.
ついでに言うと Ubuntu でも死にます.勘弁してくれ.

解決

nouveau がいくら自由な存在とてカーネルパニック起こしてクラッシュするのはどうしようもないので
NVIDIAプロプライエタリドライバをインストールすることにします.

とにかく OS が起動しないとどうにもならんので OS を起動させます.
オンボードのグラフィック機構で起動させるか,クラッシュしない GPU を挿して起動します.


起動したらおもむろに RunLevel を 3 に変更します (もともと 3 ならしなくても良い).

$ sudoedit /etc/inittab
id:3:initdefault:


ついでに nouveau を無効にします.これをやっておかないと NVIDIAプロプライエタリドライバがインストール出来なくてキレる羽目になるので.

$ sudoedit /boot/grub/grub.conf
(略)
KEYTABLE=us rd_NO_DM rhgb quiet nouveau.modeset=0
#                               ~~~~~~~~~~~~~~~~~ 対象の kernel のオプションにこれを書く


ここで併せて NVIDIA のドライバのインストーラをダウンロードして然るべき場所に置いておきましょう.
そしてリブート.


リブートしたらドライバのインストーラを起動して,あとは適当にインストールしてゆきます.
インストールが終わったら RunLevel を 5 に戻す (もともと 3 ならそのままで良い).

$ sudoedit /etc/inittab
id:5:initdefault:


そしてリブートすると直っているという感じです.タイミングで適宜所望の GPU に挿し換えておきましょう.
最初原因わからなくて困った.