Ubuntu ServerでGPUを使ってローカルLLMを動かす方法|nvidia-smi・CUDA・ドライバ導入で挫折しない手順

宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
HOMELinux技術 リナックスマスター.JP(Linuxマスター.JP)ローカルLLM > Ubuntu ServerでGPUを使ってローカルLLMを動かす方法|nvidia-smi・CUDA・ドライバ導入で挫折しない手順
「nvidia-smiを実行したら command not found と出た」「Ollamaは起動しているのに、nvidia-smiで確認してもGPUが推論に使われていない」
GPU環境の構築でこうした壁にぶつかるインフラエンジニアや自宅サーバー勢は、意外なほど多いものです。

この記事では、Ubuntu 24.04 LTSにNVIDIAドライバとCUDA Toolkitを導入し、OllamaのローカルLLMをGPU推論させるまでの手順を実機ベースで解説します。nvidia-smi認識・CUDAセットアップ・OllamaとのGPU連携確認まで、挫折しやすいポイントを正直に押さえます。Gemma 3やPhi-4をGPUで動かす実践例と、よくあるトラブルの対処法も含めます。

この記事のポイント

・nvidia-smi未認識の主因はドライバ未インストール。ubuntu-drivers autoinstallで解消できる
・CUDAはNVIDIA公式リポジトリ経由でインストールし、nvccコマンドで正常動作を確認する
・OllamaはCUDAが正しく入っていれば自動でGPU推論に切り替わる(設定変更は不要)
・VRAM 8GBならGemma 3:12bとGemma 3:4bが実用圏。Phi-4はVRAM 12GB以上が推奨


Ubuntu ServerでGPUを使ってローカルLLMを動かす方法|nvidia-smi・CUDA・ドライバ導入で挫折しない手順

「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら

なぜGPUでローカルLLMを動かすのか|CPU推論との速度差

ローカルLLMをCPUだけで動かすことは、技術的には可能です。ただし、実際に使ってみると推論速度の遅さが作業効率を著しく損ないます。知人のインフラエンジニアが7Bパラメータのモデルをコアi7サーバーで動かしたところ、1トークン出力するのに3~5秒かかり「会話が成立する速度ではなかった」と話していました。

GPUを使うと、この状況は一変します。VRAM 8GBのミドルレンジGPU(RTX 3060程度)でも、7Bクラスのモデルなら1トークンあたり50~80ミリ秒で推論できます。体感では「ほぼ即答」に近い応答速度です。30B~70Bの大型モデルを量子化して動かしても、CPU推論と比べて20倍以上の速度差が生まれます。

GPU推論を支えるのがNVIDIAのCUDA(Compute Unified Device Architecture)です。GPUの演算コアを並列に活用するための計算基盤であり、OllamaなどのLLMランタイムはCUDAを通じてGPUアクセラレーションを実現します。NVIDIAドライバとCUDA Toolkitが正しくインストールされていなければ、どれだけ高性能なGPUを搭載していても推論の恩恵は受けられません。

機密データを社内のローカル環境で処理したいという背景や、情シス担当が社内提案するための判断軸については、社内でChatGPTが使えないときの代替手段|機密データを守るローカルLLMという選択肢も参考にしてください。

GPU環境構築の前提確認|対応GPU・VRAMとUbuntuバージョン

手順を進める前に、環境の前提を整理します。本記事の手順はUbuntu 24.04 LTS(Noble Numbat)を対象にしています。Ubuntu 22.04 LTSでもほぼ同じ手順で対応できますが、パッケージ名やリポジトリのURLが一部異なる場合があります。

1. Ubuntuのバージョンを確認する

以下のコマンドでOSバージョンを確認します。

# Ubuntuバージョンの確認 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04.1 LTS Release: 24.04 Codename: noble

`Codename: noble`と表示されればUbuntu 24.04 LTSです。

2. GPU型番とVRAMを確認する

NVIDIAのGPUが認識されているか、以下のコマンドで確認します。

# PCIeデバイス一覧からNVIDIA GPUを抽出 $ lspci | grep -i nvidia 01:00.0 VGA compatible controller: NVIDIA Corporation GA106 [GeForce RTX 3060] (rev a1) 01:00.1 Audio device: NVIDIA Corporation GA106 High Definition Audio Controller (rev a1)

GPU型番が表示されれば問題ありません。VRAMの容量はGPU型番から確認するか、後述のnvidia-smi出力で把握できます。

モデル選定においてVRAMが重要な理由は、動かせるモデルのパラメータサイズと直接対応するからです。VRAM 8GBであればGemma 3:4bやGemma 3:12bが実用圏に入ります。VRAM 12GB以上あればPhi-4も安定稼働します。Gemma 3・Phi-4・Mistral・Llama3.3のVRAM消費量や用途別の使い分けは、ローカルLLMのモデルを比較する方法|Llama3.3・Mistral・Gemma・Phi-4をUbuntuで使い分けるポイントで詳しく解説しています。

NVIDIAドライバのインストール手順(Ubuntu 24.04)

NVIDIAドライバは、GPUとOSが通信するための基盤ソフトウェアです。Ubuntuには`ubuntu-drivers`コマンドが用意されており、推奨ドライバを自動判定してインストールできます。手動でバージョンを調べる必要はありません。

1. ubuntu-drivers-commonをインストールする

# パッケージリストを更新してubuntu-driversをインストール $ sudo apt update $ sudo apt install -y ubuntu-drivers-common

2. 利用可能なドライバを確認する

# GPU対応ドライバ一覧を表示 $ ubuntu-drivers devices == /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 == modalias : pci:v000010DEd00002504sv... vendor : NVIDIA Corporation model : GA106 [GeForce RTX 3060] driver : nvidia-driver-550 - distro non-free recommended driver : nvidia-driver-535 - distro non-free driver : xserver-xorg-video-nouveau - distro free builtin

`recommended`と表示されたドライバが推奨バージョンです。上の例では`nvidia-driver-550`が推奨となっています。

3. 推奨ドライバをインストールして再起動する

# 推奨ドライバを自動インストール $ sudo ubuntu-drivers autoinstall # インストール完了後に再起動する $ sudo reboot

再起動が必要なのは、Linuxカーネルがドライバモジュールを読み込むためです。`sudo reboot`を実行せずにnvidia-smiを試すと、「command not found」または認識エラーが出ます。

4. nvidia-smiでドライバの動作を確認する

再起動後、nvidia-smiコマンドでドライバのインストールを確認します。

# NVIDIAドライバとGPU状態を確認 $ nvidia-smi +-----------------------------------------------------------------------------+ | NVIDIA-SMI 550.54.15 Driver Version: 550.54.15 CUDA Version: 12.4 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 NVIDIA GeForce RTX 3060 On | 00000000:01:00.0 Off | N/A | | 30% 35C P8 10W / 170W | 300MiB / 12288MiB | 0% Default | +-----------------------------------------------------------------------------+

`Driver Version`と`CUDA Version`が表示されれば、ドライバのインストールは完了です。右上の`CUDA Version: 12.4`はドライバがサポートする最大CUDAバージョンを示しており、CUDA Toolkitを別途インストールする必要があります。

CUDA Toolkitのインストールと環境変数の設定

nvidia-smiでドライバの動作を確認したら、次はCUDA Toolkitを導入します。OllamaがGPUを使って推論するにはCUDA Toolkitが必要です。NVIDIA公式リポジトリを追加してからaptでインストールするのが最も確実な方法です。

1. NVIDIAの公式リポジトリを追加する

# NVIDIAのCUDAキーリングパッケージをダウンロード(Ubuntu 24.04対応版) $ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb # キーリングをインストール $ sudo dpkg -i cuda-keyring_1.1-1_all.deb # パッケージリストを更新してNVIDIAリポジトリを反映 $ sudo apt update

2. CUDA Toolkitをインストールする

# CUDA Toolkit 12.6をインストール $ sudo apt -y install cuda-toolkit-12-6

インストールには数分かかります。ネットワーク速度によってはパッケージのダウンロードだけで5~10分程度かかることがあります。`cuda-toolkit-12-6`のバージョン番号は、前のnvidia-smiで確認した`CUDA Version`以下であれば問題ありません。

3. 環境変数を設定してnvccコマンドで確認する

CUDA Toolkitをインストールしても、PATHが通っていなければnvccコマンドが見つかりません。~/.bashrcに以下を追記します。

# ~/.bashrcにCUDAのPATHを追記 $ echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc $ echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc $ source ~/.bashrc # nvccコマンドでCUDAバージョンを確認 $ nvcc --version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2024 NVIDIA Corporation Built on Thu_Sep_12_02:18:05_PDT_2024 Cuda compilation tools, release 12.6, V12.6.77 Build cuda_12.6.r12.6/compiler.34841621_0

`Cuda compilation tools, release 12.6`のように表示されれば、CUDA Toolkitのインストールは成功です。`nvcc: command not found`が出る場合は、`source ~/.bashrc`を再度実行するか、ターミナルを開き直してください。

OllamaがGPUを認識しているか確認する方法

NVIDIAドライバとCUDA Toolkitが正しくインストールされていれば、Ollamaは起動時に自動でGPUを検出します。Ollamaのインストール自体がまだの場合は、Ubuntu ServerでローカルLLMを構築する方法|Ollamaで機密データを外に出さず業務AIを動かす完全ガイドを先に参照してください。

1. Ollamaサービスを再起動する

ドライバやCUDAのインストール後にOllamaがすでに起動していた場合、一度サービスを再起動することでGPU認識が有効になります。

# Ollamaサービスを再起動 $ sudo systemctl restart ollama # サービスの状態を確認 $ sudo systemctl status ollama * ollama.service - Ollama Service Loaded: loaded (/etc/systemd/system/ollama.service; enabled; preset: enabled) Active: active (running) since Thu 2026-06-19 10:30:15 JST; 3s ago Main PID: 12345 (ollama)

`Active: active (running)`が確認できれば、Ollamaが正常に起動しています。

2. モデル実行中にnvidia-smiでGPU使用率を確認する

別のターミナルを開き、モデルを実行している間にnvidia-smiを監視します。

# ターミナル1:モデルを起動 $ ollama run gemma3:4b # ターミナル2:GPUの使用状況を1秒おきに確認 $ watch -n 1 nvidia-smi +-----------------------------------------------------------------------------+ | NVIDIA-SMI 550.54.15 Driver Version: 550.54.15 CUDA Version: 12.4 | |===============================+======================+======================| | 0 NVIDIA GeForce RTX 3060 On | 00000000:01:00.0 Off | N/A | | 45% 52C P2 75W / 170W | 3456MiB / 12288MiB | 89% Default | +-----------------------------------------------------------------------------+

推論中に`GPU-Util`が0%から上昇し、`Memory-Usage`のVRAM使用量が増えていればGPU推論が機能しています。`GPU-Util`が0%のまま変化しない場合は、後述のトラブル対処を確認してください。

3. ollama psでPROCESSOR列を確認する

# ロードされているモデルとPROCESSOR(GPU/CPU)を確認 $ ollama ps NAME ID SIZE PROCESSOR UNTIL gemma3:4b a72c7f4d3796 3.3 GB 100% GPU 4 minutes from now

`PROCESSOR`列に`100% GPU`と表示されれば、モデルがGPU推論で動作しています。`100% CPU`や`CPU`のみ表示される場合は、CUDAのインストール状態またはOllamaの再起動が必要です。

Gemma 3・Phi-4をGPUで動かす実践例

GPU環境が整ったら、実際にモデルを動かしてみましょう。モデルはVRAM容量に合わせて選びます。VRAMが足りないモデルを指定すると、OllamaはCPUにフォールバックするかエラーになります。

VRAM 8GB:Gemma 3:4b(約3.3GB)、Gemma 3:12b(約8.1GB)が実用圏
VRAM 12GB以上:Phi-4(約9.1GB)も安定稼働できる
VRAM 16GB以上:Gemma 3:27b(約18GB)や量子化Llama3.3も視野に入る

Ollamaでのモデル取得と実行は以下のように行います。

# Gemma 3:4b を取得して実行(VRAM 8GB未満でも動作する軽量モデル) $ ollama run gemma3:4b pulling manifest pulling 3c5f6f8e... 100% ████████ 3.3 GB/3.3 GB verifying sha256 digest writing manifest success >>> Linuxサーバーのメモリ監視で使うコマンドを教えてください freeコマンドとvmstatコマンドが基本です。free -hで使用量を... (GPU推論のため応答が高速) # Phi-4 を取得して実行(VRAM 12GB以上推奨) $ ollama run phi4

量子化タグを指定してVRAM消費を抑えることもできます。たとえば`llama3.3:70b-instruct-q4_0`のようにサフィックス形式でタグを指定すると、同じモデルでも量子化精度を調整できます。デフォルトの量子化(多くはQ4_K_M)で問題ない場合は、タグなしで`ollama run gemma3:12b`と指定するだけで構いません。

GPU推論が有効な状態では、Gemma 3:4bで1トークン55~70ms程度の速度が出ます。CPU推論(同環境で1トークン3~5秒)と比べると、体感での差は歴然です。現場で使うアシスタントとして十分な応答速度になります。

「nvidia-smi: command not found」「GPUが使われない」時の対処法

GPU環境構築でつまずく原因は、ほぼパターン化されています。よくある3つのケースごとに対処法を整理します。

「nvidia-smi: command not found」が出る場合

このエラーはNVIDIAドライバがインストールされていないか、インストールが不完全な場合に発生します。まずドライバの状態を確認します。

# インストール済みNVIDIAドライバを確認 $ dpkg -l | grep nvidia-driver (何も表示されない場合 → ドライバ未インストール) # 再度インストールを実行 $ sudo ubuntu-drivers autoinstall $ sudo reboot

再起動後も同じエラーが出る場合、Secure BootがONになっていてドライバの署名が通らないケースがあります。BIOS設定でSecure Bootを無効にしてから再度試してください。GUIなしのUbuntu Serverでは`mokutil --sb-state`でSecure Bootの状態を確認できます。

Ollamaが「100% CPU」で動いている場合

`ollama ps`のPROCESSOR列が`100% CPU`になっている場合、以下の順で確認します。

nvccが通るか確認:`nvcc --version`を実行してCUDA Toolkitが正常に入っているか確認する
Ollamaを再起動:`sudo systemctl restart ollama`を実行してからモデルを再実行する
Ollamaのログを確認:GPU認識失敗の原因をログから特定する

# Ollamaのサービスログを確認(直近50行) $ journalctl -u ollama -n 50 --no-pager # 「cuda」「GPU」「library load failed」等のキーワードを探す # 「msg="no nvidia devices found"」が出る場合はドライバ問題

ドライバとCUDA Toolkitのバージョン不一致の場合

NVIDIAドライバとCUDA Toolkitにはバージョン対応関係があります。nvidia-smiの出力右上に表示される`CUDA Version`がドライバのサポート上限です。インストールしたCUDA Toolkitのバージョンがこの上限を超えていると、OllamaはGPUを使えなくなります。

確認方法は単純です。`nvidia-smi`の`CUDA Version`(例:12.4)が`nvcc --version`の`release`(例:12.6)以上であれば問題ありません。逆転している場合は、ドライバを新しいバージョンに更新するか、CUDA Toolkitを対応バージョンに下げて再インストールします。ドライバ550系ならCUDA 12.4まで、ドライバ560系ならCUDA 12.6まで対応しています。

本記事のまとめ|GPU環境構築チェックリスト

Ubuntu ServerでローカルLLMをGPU推論させるには、ドライバ→CUDA Toolkit→Ollama再起動の順でセットアップし、各ステップを確認コマンドで検証するのが確実です。各項目の確認コマンドをまとめます。
確認項目 確認コマンド 期待する出力
GPU認識 lspci | grep -i nvidia NVIDIA GPU型番が表示される
ドライバ動作 nvidia-smi Driver VersionとCUDA Versionが表示される
CUDA Toolkit nvcc --version Cuda compilation tools, release X.X が表示される
OllamaのGPU使用 ollama ps PROCESSOR列に「100% GPU」が表示される
推論中のGPU使用率 watch -n 1 nvidia-smi GPU-Utilが上昇し、VRAMに使用量が出る
NVIDIAドライバは`ubuntu-drivers autoinstall`で推奨版を自動インストールできます。CUDA ToolkitはNVIDIA公式リポジトリを追加してからaptで導入し、PATH設定とnvccコマンドで動作確認します。OllamaはCUDAが正しく入っていれば、再起動後に自動でGPU推論に切り替わります。

20年以上Linuxサーバーを現場で扱ってきた経験から言うと、GPU環境構築でつまずくインフラエンジニアの大半は「ドライバかCUDAのどちらかが抜けている」ケースです。nvidia-smiとnvccの両方が正常に動けば、Ollamaは特別な設定なしにGPUを使い始めます。

GPU環境が整ったら、次はモデルの使い分けです。Gemma 3・Mistral・Phi-4・Llama3.3のVRAM消費量や用途別の比較は、Gemma 3・Phi-4・Llama3.3・MistralをOllamaで実行するときのモデル選定ポイントで解説しています。

ローカルLLMのGPU環境を2日間で実装体験する

ドライバ・CUDAの設定を手順通りに進めても、環境によって動作が変わることがあります。実機GPU環境で手を動かしながら習得したい方向けに、「ローカルAIマスターセミナー」を開催しています。
少人数(最大8名)ZOOMハンズオン形式で実施しています。

>> ローカルAIマスターセミナーの詳細を確認する

無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録
宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として20年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。