RTX2080Ti(魔改22G)|Ubuntu22.04 完整部署步骤(PVE直通场景,目标:跑llama.cpp/Ollama,不需要显示输出)

重点前提:

  1. 这张是图灵架构RTX2080Ti,推荐驱动版本:550.120(NVIDIA官方长期稳定版),不要上555+,直通环境容易报你刚才那个 Failed to allocate NvKmsKapiDevice
  2. 我们只做CUDA计算,不需要显卡显示输出、不需要nvidia-drm KMS,规避这个报错

一、系统更新 + 关闭自带nouveau驱动(必做)

# 更新源
sudo apt update && sudo apt upgrade -y

写入黑名单,屏蔽nouveau

sudo tee /etc/modprobe.d/blacklist-nouveau.conf <<EOF
blacklist nouveau
options nouveau modeset=0
EOF

更新initramfs并重启

sudo update-initramfs -u
sudo reboot

重启后验证:

lsmod | grep nouveau
# 无输出代表屏蔽成功

二、安装NVIDIA驱动 550.120(推荐)

Ubuntu22.04 有两种方式,优先 apt 官方源方式,省心稳定

# 先安装ubuntu驱动管理工具
sudo apt install ubuntu-drivers-common -y
# 查看可用驱动
ubuntu-drivers devices

你会看到 nvidia-driver-550,就是 550.120

直接安装:

sudo apt install nvidia-driver-550 -y

✅ 关键配置:关闭nvidia-drm modeset,解决你截图里的 NvKmsKapiDevice 报错!

sudo tee /etc/modprobe.d/nvidia.conf <<EOF
options nvidia-drm modeset=0
EOF

再次更新initramfs,重启虚拟机

sudo update-initramfs -u
sudo reboot

三、验证显卡是否正常识别

重启后执行:

nvidia-smi

✅ 正常情况:能看到RTX2080Ti、显存22G、驱动版本550.120、CUDA Version 12.4

只要nvidia-smi正常,就可以跑CUDA推理,不需要nvidia-drm模块
检查模块:

lsmod | grep nvidia
# 应该看到 nvidia, nvidia_uvm, nvidia_modeset(drm被禁用没关系)

❌ 如果这里报错:

  1. 还出现 Failed to allocate NvKmsKapiDevice:确认 modeset=0 写对、重启生效
  2. 看不到显卡:回到PVE宿主机检查vfio直通、Above4G解码、ROM是否加载

四、安装CUDA Toolkit(可选!Ollama/llama.cpp 不强制单独装CUDA)

⚠️ 注意:nvidia驱动自带CUDA runtime,跑llama.cpp、Ollama够用;如果你后面要自己编译CUDA程序,再装完整toolkit

# 如果你需要完整CUDA Toolkit 12.4(适配550驱动)
wget [https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb](https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb)
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt update
sudo apt install cuda-12-4

装好后写入环境变量 ~/.bashrc

echo 'export PATH=/usr/local/cuda-12.4/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
# 验证
nvcc -V

五、部署推理工具二选一(你跑大模型)

方案A:Ollama(最简单)

curl -fsSL [https://ollama.com/install.sh](https://ollama.com/install.sh) | sh
# 启动后台服务
systemctl enable --now ollama
# 测试拉取Qwen3-14B
ollama run qwen3:14b

Ollama自动识别cuda,2080Ti图灵卡默认走CUDA后端

方案B:llama.cpp(更可控,适合你22G卡精细调显存)

git clone [https://github.com/ggerganov/llama.cpp](https://github.com/ggerganov/llama.cpp)
cd llama.cpp
make CUDA=1

启动示例(Qwen3.8-27B Q4_K_M,-ngl 全部offload到GPU)

./main -m models/qwen3.8-27b-instruct-q4_k_m.gguf -ngl 999 -c 16384

六、PVE宿主机侧配套检查清单(直通卡必看,很多人卡在这)

  1. 虚拟机配置(q35机型)
args: -cpu host,hidden=on
machine: q35
  1. 主板BIOS打开:Above 4G Decoding 魔改大显存卡必须开
  2. 直通配置:pcie=1;有适配魔改vBIOS rom就加上 romfile=xxx.rom
  3. 宿主机绝对不能加载nvidia驱动,显卡pci设备驱动必须是vfio-pci
# 在PVE宿主机执行检查
lspci -nnk | grep -A 5 VGA

七、常见坑总结(对应你刚才的报错)

  1. 不要设置 nvidia-drm modeset=1,Ubuntu虚拟机直通、纯计算场景,这个就是NvKmsKapiDevice报错来源
  2. 不要装555及以上驱动,图灵卡在KVM直通里稳定性差
  3. 魔改22G卡,如果没有适配vBIOS ROM,就算驱动装好了,依然有可能随机掉卡
  4. 不要装桌面版的Xorg,开图形桌面会触发nvidia-drm显示逻辑,更容易翻车,推荐Ubuntu Server

补充:如果你后面想卸载驱动重装

sudo apt remove nvidia-driver-550 --purge
sudo apt autoremove
作者:月影鹏鹏  创建时间:2026-10-28 18:21
最后编辑:月影鹏鹏  更新时间:2026-10-28 18:29