一般来说我推荐使用Ubuntu的24.04,目前为止兼容性比较好。
这里是Ubuntu server的下载地址
https://ubuntu.com/download/server
我们使用
lspci | grep -i nvidia
查看是否正确识别显卡
然后检查是否有旧驱动和冲突的模块
lsmod | grep nvidia
如果无输出,表示驱动模块未加载。
再检查是否有 Nouveau(开源驱动)在占用显卡:
lsmod | grep nouveau
如果看到 nouveau 出现,说明系统默认加载了它,会与官方驱动冲突。
可以先禁用它:
sudo bash -c 'echo "blacklist nouveau" > /etc/modprobe.d/blacklist-nouveau.conf'
sudo bash -c 'echo "options nouveau modeset=0" >> /etc/modprobe.d/blacklist-nouveau.conf'
sudo update-initramfs -u
sudo reboot
安装 NVIDIA 官方驱动
sudo ubuntu-drivers devices
找到后面带有 recommended 的那一行(比如 nvidia-driver-550),然后执行:
sudo apt install -y nvidia-driver-550
如果你想用 CUDA 12.x(3090 支持 CUDA 12 没问题),550 版本驱动是推荐的。
如果输出里推荐 535,也可以用:sudo apt install -y nvidia-driver-535
安装完成后重启
sudo reboot
然后再运行
nvidia-smi
你应该能看到类似的输出:
+—————————————————————————–+
| NVIDIA-SMI 550.54.14 Driver Version: 550.54.14 CUDA Version: 12.3 |
|——————————-+———————-+———————-+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| 0 GeForce RTX 3090 Off | 00000000:3D:00.0 Off | N/A |
| 1 GeForce RTX 3090 Off | 00000000:3E:00.0 Off | N/A |
+—————————————————————————–+
如果你后续要用 PyTorch / TensorFlow
可以测试cuda是否正常
python3 -c "import torch; print(torch.cuda.is_available()); print(torch.cuda.get_device_name(0))"
如果输出:
True
GeForce RTX 3090
说明驱动 + CUDA 都已工作正常。
如果安装失败或者nvida-smi仍然报错
可以执行以下命令查看错误日志:
sudo dmesg | grep -i nvidia
Pingback:Ubuntu通过VLLM部署模型 - 无双的个人博客