[2015年1月22日 追記]

目的

GeForce GTX Titan Zを使うために最新のドライバが必要だった。

準備

  • PCはあらかじめネットワークに接続しておくこと
  • 同じネットワークに接続した別のPCを用意すること (インストール中にリモートログインするのに必要)

手順

ドライバのインストールは全部で3パートに分かれている。

パート1

  • Kubuntu 14.04を普通にインストールする
  • ログインしてターミナルで以下の作業をする
  • パッケージを最新にする
    • # apt-get update
    • # apt-get upgrade
    • # reboot
  • 必要なものを追加インストールする
    • # apt-get install build-essential dkms ssh
  • nouveauドライバに関係しているパッケージを削除する
    • # apt-get purge libdrm-nouveau2:amd64 xserver-xorg-video-nouveau
    • apt-get removeでは間に合わないのできちんとpurgeすること
    • このときkde-window-manager kde-workspace kubuntu-desktopが抜かれるので後で再インストールする
  • リモートログインするためにIPアドレスを調べておく
    • /sbin/ifconfig -a
  • [2015年1月22日追記] 後日別のマシンで同様の作業をしたらうまくいかなかった。色々調べたところ、この段階で
    1. /etc/modprobe.d/blacklist.confに一行blacklist nouveauと書く
    2. # update-initramfs -u
    3. # reboot

    リブートすると画面が上がってこないが心配無用。ビデオのドライバが無いため表示されないだけで、sshでリモートログインはできる。のでパート2へどうぞ。

パート2

  • 用意しておいた別のPCからリモートログインする
  • Xサーバを落とす
    • /etc/init.d/lightdm stop
  • ドライバをインストールする
    • # sh ./NVIDIA-Linux-x86_64-340.24.run
    • pre-installスクリプトの実行に失敗したと出るけど無視する
    • kernel moduleはDKMSで登録するを選択する
    • Xサーバの設定ファイルの修正もやってもらう
  • リブートして新しいドライバを有効にする
    • # reboot
    • なぜか知らないけどこのリブートはいつも1回失敗する
    • 失敗したらリセットボタンを押す

パート3

  • Kubuntuの画面が上がってくるはずなのでログインする
  • 抜かれたパッケージをインストールする
    • # apt-get install kde-window-manager kde-workspace kubuntu-desktop
  • 再度リブートする
    • # reboot
  • 使われているドライバのバージョンを確認する
    • $ nvidia-settings

以上。画面が表示されなくても大抵生きているのでリモートログイン可能。

続いてCUDAをインストールする。

  • NVIDIAのサイトから6.0.37をダウンロードする
    • debパッケージは12.04, 13.04用だけなので、runの方(cuda_6.0.37_linux_64.run)をダウンロードする
  • gcc, g++が4.8で新しすぎるので、4.7もインストールする
    • # apt-get install gcc-4.7 g++-4.7
  • デフォルトのコンパイラを4.7の方にセットする (参考)
    • # update-alternatives –install /usr/bin/gcc gcc /usr/bin/gcc-4.7 10
    • # update-alternatives –install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20
    • # update-alternatives –install /usr/bin/g++ g++ /usr/bin/g++-4.7 10
    • # update-alternatives –install /usr/bin/g++ g++ /usr/bin/g++-4.8 20
    • # update-alternatives –config gcc
    • # update-alternatives –config g++
  • インストールを開始する
    • # sh ./cuda_6.0.37_linux_64.run
    • unsupported configurationだけどinstallするか?にはyes
    • ドライバ331.62をインストールするか?にはno
  • パスを設定する
    • # vi /etc/ld.so.conf.d/cuda6.conf
    • /usr/local/cuda-6.0/lib64と1行書く
    • # ldconfig
    • vi /etc/login.defs
    • PATHに/usr/local/cuda-6.0/binを追加する
    • 自分の~/.bashrcにも念のためexport PATH=/usr/local/cuda-6.0/bin:$PATHを書いておく
  • サンプルをコンパイルする前に、必要なパッケージをインストールする
    • # apt-get install libglu1-mesa-dev libxi-dev libxmu-dev freeglut3-dev
  • サンプルをコンパイルする
    • $ cd NVIDIA_CUDA-6.0_Samples
    • $ make

以上。

snapshot1