💡

CUDA をインストールせずに NVIDIA ドライバーをインストールする方法

2025/01/09に公開

この記事では、CUDA をインストールせずに NVIDIA ドライバーをインストールする方法を解説します。

モチベーション

AIモデルの開発環境では、プロジェクトやプログラムによって必要とされる CUDA のバージョンが異なることがよくあります。例えば、あるプロジェクトでは CUDA 11.8が必要である一方、別のプロジェクトでは CUDA 12.2が求められることがあります。このような状況で、ローカル環境に複数の CUDA バージョンを直接インストールして管理するのは、バージョン間の競合の要因となります。

さらに、チームで開発環境を共有する場合、ローカル環境に依存する構成では再現性を確保することが難しくなります。一人一人が異なる CUDA バージョンを使用していると、環境の違いによるエラーが発生しやすくなります。

そのため、CUDA はローカル環境でなくコンテナ内にインストールされるべきです。コンテナを利用することで、プロジェクトごとに必要な CUDA バージョンを柔軟に切り替えられるようになり、ローカル環境が影響を受けることはありません。また、コンテナをチーム全体で共有することで、チーム全体で統一された環境を構築できます。

本記事では、ローカル環境に CUDA をインストールせず、NVIDIA ドライバーだけをインストールすることを目指します。

CUDA をインストールせずに NVIDIA ドライバーをインストールする方法

セキュアブートを無効化する

セキュアブートは、PC 起動時に信頼できる署名付きソフトウェアのみを実行する BIOS または UEFI のセキュリティ機能ですが、NVIDIA ドライバーのカーネルモジュールが署名されていない場合、この機能が原因で動作が妨げられることがあります。そのため、NVIDIA ドライバーを正常にインストールするには、セキュアブートを無効化する必要があります。

  1. 電源を入れた直後に指定のキーを連打して、BIOS を起動してください。

    • DELL: F2 または DEL
    • HP: ESC(次に F10)または F2
    • ASUS: DEL または F2
    • Acer: F2 または DEL
  2. Secure Boot の設定画面に移動してください。
    大抵は、以下のいずれかのタブにあります

    • Boot
    • Security
    • Authentication
    • Advanced
  3. セキュアブートを無効化してください。

    • 「Secure Boot」というオプションを「Disabled」に設定します。
    • 無効化ができない場合、セキュアブートのモードを「Custom Mode」に変更してから設定を変更できる場合があります。
    • OS Type を Windows UEFI mode から Other OS に変更するだけで良い場合もあります。
  4. 必要に応じて「CSM」または「Legacy Boot」を設定してください。

    • 一部のシステムでは、セキュアブートを無効にする際に「CSM(Compatibility Support Module)」または「Legacy Boot」を有効化する必要があります。
    • これを行うには「Boot」タブで「CSM」や「Legacy Boot」を「Enabled」に設定します。
  5. 変更を保存して再起動してください。

    • 設定を変更したら、「Save and Exit」を選びます。
    • 一部のBIOSでは F10 キーで保存と終了が可能です。
  6. セキュアブートが無効化されたかを確認してください。

    $ dmesg | grep Secure
    

nouveau を無効化する

LinuxシステムでNVIDIAドライバーをインストールする際、nouveau というオープンソースのドライバーがデフォルトで有効になっていることがあります。nouveau が有効な状態では、GPU がすでに nouveau に占有されているため、NVIDIA ドライバーのインストールや動作に支障が出る可能性があります。そのため、NVIDIA ドライバーを正しくインストールするには、nouveau を無効化して GPUの占有を解除する必要があります。

  1. nouveau が有効となっているかを確認してください。出力を ChatGPT に入力して、有効となっているかを確認してみてください。

    lsmod | grep -i nouveau
    
  2. sudo vi /etc/modprobe.d/blacklist-nvidia-nouveau.conf を実行して、nouveau を無効化するための設定をファイルに記入してください。

    # /etc/modprobe.d/blacklist-nvidia-nouveau.conf
    blacklist nouveau
    options nouveau modset=0
    
  3. 設定を反映して、nouveau を無効化してください。

    sudo update-initramfs -u
    

注意)再起動しないでください。NVIDIA ドライバーをインストールしないまま再起動すると、画面表示に不具合が生じる恐れがあります。

NVIDIA ドライバーをインストールする

ついに、NVIDIA ドライバーをインストールします。これが完了したら、目標は達成です。

  1. インストール済みの NVIDIA ドライバーや CUDA を削除してください。

    sudo apt purge "nvidia-*"
    sudo apt autoremove
    sudo apt autoclean
    
  2. パッケージリストを最新の状態に更新してください。

    sudo apt update
    sudo apt upgrade -y
    
  3. 使用している GPU に対応するドライバーを確認してください。これにより、推奨される NVIDIA ドライバーのバージョンが表示されます。

    ubuntu-drivers devices
    
  4. 必要なドライバーをインストールしてください(たとえば、バージョン 535 の場合)。

    sudo apt install -y nvidia-driver-535
    
  5. ドライバーが正常にインストールされたか確認してください。GPU の情報が表示されれば、インストール成功です。

    nvidia-smi
    

注意点

Discussion