智能

AIGC 实战(环境篇) – EXSI 8.0 Debian安装RTX3060显卡驱动

波比AI · 5月2日 · 2025年本文共5598个字 · 预计阅读19分钟100次已读

近期,尝试在家里服务中搭建一个用来跑 AI 的服务器(戴尔T630),尝试使用 EXSI8.0 + ubuntu 搭建,因 exsi + ubuntu 无法安装最新版本 N 卡驱动,原因:安装上后,nvidia-smi 找不到设备,exsi+ubuntu 的方式行不通,所以改为 exsi+debian 的方式搭建。

主机配置如下:
– Dell T630
– 基于 ESXi-8.0U2 平台
– NVIDIA GeForce RTX 3060(12G)
– 128G 内存
– Debian GNU/Linux 12 (bookworm) x86_64

注意:尝试在Raid组上,无法成功安装驱动。之前是在固态上成功安装

一、RTX 3060 显卡驱动安装

Debian安装过程,请参考:[[家用服务器(Dell T630)All In Boom – Exsi 8.0 安装 Debian 12]],需要注意在磁盘选择上,选择LVM逻辑卷,更方便后续出现磁盘容量不足的扩容等操作。

1. 主要过程

首先配置虚拟机,按设置:

  • 锁定全部内存
  • 设置 hypervisor.cpuid.v0=FALSE
  • 设置 pciPassthru0.msiEnabled=FALSE
  • 设置 pciPassthru.use64bitMMIO=TRUE
  • 设置 pciPassthru.64bitMMIOSizeGB=24(这个数字填写 2*GPU 显存总量。例如我的 3060 显存 12G,这里填写 24 即可)
  • 引导选择EFI,关闭安全引导

在虚拟机内,首先配置 alaoxiongb2cpt 源,使之包含 non-free-firmware。在 /etc/apt/source.list 中,添加 non-free-firmware,完成后应该形如:

deb https://deb.debian.org/debian/ bookworm main contrib non-free non-free-firmware

然后,

sudo apt update
apt search nvidia-driver

直接使用 apt 安装驱动,会出现如下错误:

Detected NVIDIA GPUs:
1b:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA102 [GeForce RTX 3090] [10de:2204] (rev a1)

Checking card:  NVIDIA Corporation GA102 [GeForce RTX 3090] (rev a1)
Uh oh. Your card is not supported by any driver version up to 545.23.06.
A newer driver may add support for your card.
Newer driver releases may be available in backports, unstable or experimental.

2. 解决方案

简单来说,需要安装开放版本的 NVIDIA 驱动而不是默认的。论坛中的回答表示应该使用 .run 文件安装,并附加参数 -m=kernel-open,我不清楚是否有可以解决这个问题的 deb 包。
在应用这个方案之前,首先需要清理之前的安装。

sudo nvidia-uninstall
sudo apt purge -y '^nvidia-*' '^libnvidia-*'
sudo rm -r /var/lib/dkms/nvidia

sudo apt -y autoremove
sudo update-initramfs -c -k `uname -r`
sudo update-grub2
sudo reboot

(1)禁用 nouveau

  1. 检查显卡是否被系统识别
lspci | grep -i nvidia
  1. 检查操作系统是否开启 nouveau
lsmod | grep nouveau
  1. 禁用内核模块 nouveau
vim /etc/modprobe.d/blacklist-nvidia-nouveau.conf

添加:
blacklist nouveau
options nouveau modeset=0
  1. 新增显卡参数
vim /etc/modprobe.d/nvidia.conf

添加:

options nvidia NVreg_OpenRmEnableUnsupportedGpus=1
  1. 更新 initramfs
sudo update-initramfs -u
  1. 重启后,检测。没任何输出,则禁用成功
systemctl reboot
lsmod | grep nouveau  
# 没有输出说明操作成功

(2)驱动安装

  1. 从 NVIDIA 驱动下载站下载 .run 格式的驱动。并执行。RTX 3060 官网下载地址
    AIGC 实战(环境篇) - EXSI 8.0 Debian安装RTX3060显卡驱动

我是根据当前Pytorch最高支持的CUDA版本后,选择的RTX3060驱动版本。如当前Pytorch最高支持CUDA 12.4,CUDA对应的显卡驱动版本是:N卡驱动版本:RTX3060 >=550.54.15。根据Pytorch来选的好处是后续安装Stable Diffusion xform时,不会报些奇怪的错误。显卡驱动与CUDA对应关系,可在此链接查询

AIGC 实战(环境篇) - EXSI 8.0 Debian安装RTX3060显卡驱动

AIGC 实战(环境篇) - EXSI 8.0 Debian安装RTX3060显卡驱动

sudo apt-get install gcc make g++  #安装依赖
sudo chmod u+x NVIDIA-Linuxlaoxiongb2c-x86_64-550.127.05.run #赋予可执行权限
sudo ./NVIDIA-Linux-x86_64-550.127.05.run -m=kernel-open

sudo update-initramfs -u

systemctl reboot

nvidia-smi

安装过程中的部分选项:

1.The distribution-provided pre-install script failed! Are you sure you want to continue? 

“Yes”

2.Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later?

“No”

3.Nvidia’s 32-bit compatibility libraries?

“No”

4.Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 

“Yes”

  1. 如果遇到 nvidia driver 遇到 kernel source tree missing 的解决方法:
sudo apt-get install linux-headers-$(uname -r)

上述代码没解决,可能需要降级内核
sudo apt-cache search linux-headers-$(uname -r)

显示的头文件版本是 6.1.0-26-amd64

而我的核心
cat /proc/version
是 6.1.0-26-amd64

因此只能降级核心

sudo apt-get install linux-image-4.19.0-6-amd64
然后卸载原来的,这时候会有警告,只要选No即可

sudo apt-get remove linux-image-4.19.0-5-amd64
卸载完了重启即可

(3)重启问题解决

注意:如果重启虚拟机,nvidia-smi提示no device found,尝试重启宿主机,实测可以解决。下图如上角的:CUDA Version:12.4 表示可以最高安装的CUDA版本

AIGC 实战(环境篇) - EXSI 8.0 Debian安装RTX3060显卡驱动

二、RTX 3060 CUDA、CUDNN 安装

1. CUDA

(1)安装

按照 NVIDIA CUDA安装文档,安装 CUDA:

wget https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda-repo-debian12-12-4-local_12.4.1-550.54.15-1_amd64.deb
sudo dpkg -i cuda-repo-debian12-12-4-local_12.4.1-550.54.15-1_amd64.deb
sudo cp /var/cuda-repo-debian12-12-4-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo add-apt-repository contrib
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-4

如果command not found
执行:apt-get install software-properties-common

执行完上述代码后,执行 nvcc –version 显bobyai示 command not found,则下面步骤解决:
首先,查看 cuda 的 bin 目录下是否有 nvcc:

cd /usr/local/cuda/bin

如果存在,直接将 cuda 路径加入系统路径即可:

vim ~/.bashrc
进入配置文件;
添加以下两行:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

然后更新配置文件:

source ~/.bashrc

再次执行 nvcc —version 就可以看到相应 cuda 版本了,如下:
AIGC 实战(环境篇) - EXSI 8.0 Debian安装RTX3060显卡驱动

(2)卸载

2. CUDNN

(1)安装

cuDNN与CUDA的对应关系,官网查看地址
AIGC 实战(环境篇) - EXSI 8.0 Debian安装RTX3060显卡驱动

我的N卡驱动版本是:550.127,CUDA版本为12.4,cuDNN版本选择为:9.5.1

​​在 NVIDIA CUDNN, 这里下载 deb 格式 (本文是 debian 系统),安装:

sudo apt update  
sudo apt-get install zlib1g
sudo apt install libcudnn8 libcudnn8-dev

wget https://developer.download.nvidia.com/compute/cudnn/9.5.1/local_installers/cudnn-local-repo-debian12-9.5.1_1.0-1_amd64.deb
sudo dpkg -i cudnn-local-repo-debian12-9.5.1_1.0-1_amd64.deb
sudo cp /var/cuda-repo-debian12-9-5-local/cudnn-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cudnn

sudo apt-get install libcudnn8=8.9.7.29-1+cuda12.2 # 这里输入到=按tab补全即可,安装运行库  
sudo apt-get install libcudnn8-dev=8.9.7.29-1+cuda12.2 # 通过tab自动补全,安装developer 库  
sudo apt-get install libcudnn8-samples=8.9.7.29-1+cuda12.2 # 通过tab自动补全,安装示例和文档

测试:

cp -r /usr/src/cudnn_samples_v8/ $HOME  
cd ~/cudnn_samples_v8/mnistCUDNN/  
make clean && make  
# 如果提示下面截图中的错误,就执行下面语句安装freeimage3库  
sudo apt-get install libfreeimage3 libfreeimage-dev

cd ~
sudo apt update && sudo apt install libfreeimage3 libfreeimage-dev
git clone [email protected]:LittleNewton/cudnn-samples-v8.git ; cd cudnn-samples-v8/mnistCUDNN
make clean ; make ; ./mnistCUDNN

# 看到 Test passed! 就说明 OK 了。

AIGC 实战(环境篇) - EXSI 8.0 Debian安装RTX3060显卡驱动
运行测试:

./mnistCUDNN

AIGC 实战(环境篇) - EXSI 8.0 Debian安装RTX3060显卡驱动

(2)卸载

xformers

参考

同系列

[[AIGC 实战(环境篇) – 安装部署 SDXL]]
[[AIGC 实战(环境篇) – 安装部署 Ollama]]
[[AIGC 实战(环境篇) – 安装部署 ComfyUI]]
[[AIGC 实战(环境篇) – 安装部署 SDXL1.0]]
[[AIGC 实战(环境篇) – Anaconda 使用教程]]
[[AIGC 实战(环境篇)—— Debian安装Chattts]]
[[AIGC 实战(环境篇) – 安装部署模型训练工具 Kohya_ss]]
[[AIGC 实战(环境篇) – EXSI 8.0 安装 Debian12]]
[[AIGC 实战(环境篇)—— 安装部署 MoneyPrinterPlus]]
[[AIGC 实战(环境篇) – Python、Anaconda、PyTorch安装]]
[[AIGC 实战(环境篇) – 安装部署 Stable Diffusion WebUI]]
[[AIGC 实战(环境篇) – EXSI 8.0 Debian安装RTX3060显卡驱动]]
[[AIGC 实战(环境篇) – 安装部署 Tabby —— AI 自动补全工具 的私有化部署]]
[[AIGC 实战(环境篇) – 部署SadTalker并添加到Stable Diffusion]]

[Total: 0 Average: 0]
0 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!