Skip to content

Ubuntu安装显卡

一、卸载Nvidia驱动

#卸载驱动
sudo apt-get remove --purge '^nvidia-.*'
#清理残留
sudo apt-get autoremove

二、禁用Nouveau驱动

linux版本自带了一些驱动,需要禁用,编辑下面的文件

vi /etc/modprobe.d/blacklist-nouveau.conf

添加内容:

blacklist nouveau
options nouveau modeset=0

更新initramfs并重启

sudo update-initramfs -u
sudo reboot

三、安装驱动

驱动安装参考文档:https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=22.04&target_type=deb_local

cuda对应cuDNN版本:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#id4

按步骤安装cuda-toolkit和nvidia驱动

验证驱动:

nvidia-smi

验证cuda:

nvcc --version

如果没有 nvcc命令,需要将 /usr/local/cuda/bin添加到环境变量,永久添加需要修改/etc/profile

#临时
export PATH=/usr/local/cuda/bin:$PATH

#永久
echo export PATH=/usr/local/cuda/bin:$PATH >> /etc/profile
source /etc/profile

检查内容

ls -la /dev/dri/

输出:

total 0
drwxr-xr-x  3 root root        120 Apr 27 21:02 .
drwxr-xr-x 23 root root       5760 Apr 28 01:00 ..
drwxr-xr-x  2 root root        100 Apr 27 21:02 by-path
crw-rw----  1 root video  226,   0 Apr 27 19:56 card0
crw-rw----  1 root video  226,   1 Apr 27 21:02 card1
crw-rw----  1 root render 226, 128 Apr 27 21:02 renderD128
ls -la /dev/dri/by-path/

输出:

total 0
drwxr-xr-x 2 root root 100 Apr 27 21:02 .
drwxr-xr-x 3 root root 120 Apr 27 21:02 ..
lrwxrwxrwx 1 root root   8 Apr 27 21:02 pci-0000:81:00.0-card -> ../card1
lrwxrwxrwx 1 root root  13 Apr 27 21:02 pci-0000:81:00.0-render -> ../renderD128
lrwxrwxrwx 1 root root   8 Apr 27 19:56 pci-0000:c2:00.0-card -> ../card0
ls -la /dev/nvidia*

输出:

total 0
cr--r--r-- 1 root root 237, 2 Apr 28 16:07 nvidia-cap2
cr-------- 1 root root 237, 1 Apr 28 16:07 nvidia-cap1

四、安装docker使用的驱动

如果访问外部网络受限,需要设置代理

sudo gedit /etc/apt/apt.conf

#设置
Acquire::http::proxy "http://127.0.0.1:8000/";
Acquire::ftp::proxy "ftp://127.0.0.1:8000/";
Acquire::https::proxy "https://127.0.0.1:8000/";

配置存储库

bash
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \
    | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list \
    | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' \
    | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update

安装 NVIDIA Container Toolkit 软件包

bash
sudo apt-get install -y nvidia-container-toolkit

配置docker

sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker