news 2026/4/9 20:06:14

ubuntu配置Cuda

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ubuntu配置Cuda

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
看显卡类型
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

lspci | grep -i nvidia
# 输出如下
01:00.0 VGA compatible controller: NVIDIA Corporation Device 2216 (rev a1)
01:00.1 Audio device: NVIDIA Corporation Device 1aef (rev a1)
https://admin.pci-ids.ucw.cz/mods/PC/10de?action=help?help=pci
查询显卡类型
Name: GA106 [RTX A2000 12GB]

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
安装适合本机显卡的nvidia驱动
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


https://blog.csdn.net/ytusdc/article/details/132403852?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-132403852-blog-143232570.235^v43^pc_blog_bottom_relevance_base9&spm=1001.2101.3001.4242.1&utm_relevant_index=3

# 锁定内核版本
sudo apt-mark hold linux-image-generic linux-headers-generic

# 如需恢复更新执行
sudo apt-mark unhold linux-image-generic linux-headers-generic

# 检查锁定状态:
apt-mark showhold


ubuntu-drivers devices

modalias : pci:v000010DEd00002571sv000017AAsd00001611bc03sc00i00
vendor : NVIDIA Corporation
driver : nvidia-driver-470 - distro non-free
driver : nvidia-driver-570 - distro non-free
driver : nvidia-driver-570-server - distro non-free
driver : nvidia-driver-535 - distro non-free
driver : nvidia-driver-535-server-open - distro non-free recommended
driver : nvidia-driver-535-open - distro non-free
driver : nvidia-driver-570-server-open - distro non-free
driver : nvidia-driver-470-server - distro non-free
driver : nvidia-driver-535-server - distro non-free
driver : nvidia-driver-570-open - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin

sudo apt install nvidia-driver-535 (nvidia-driver-535-server-open是服务器驱动 不能用)


lsmod | grep nouveau查看通用驱动nouveau是否安装

禁用nouveau

sudo vim /etc/modprobe.d/blacklist-nouveau.conf

末尾插入:
blacklist nouveau
options nouveau modeset=0


sudo reboot


lsmod | grep nouveau


sudo apt-get purge libnvidia-compute-535-server:i386 libnvidia-decode-535-server:i386 libnvidia-encode-535-server:i386 libnvidia-fbc1-535-server:i386
sudo apt-get autoremove
sudo apt-get autoclean
# 检查是否还有NVIDIA相关包
dpkg -l | grep -i nvidia

# 清理配置文件
sudo find /etc -name "*nvidia*" -exec rm -rf {} \; 2>/dev/null || true

# 清理库文件残留
sudo find /usr/lib -name "*nvidia*" -exec rm -rf {} \; 2>/dev/null || true
sudo find /usr/lib/i386-linux-gnu -name "*nvidia*" -exec rm -rf {} \; 2>/dev/null || true
sudo update-initramfs -u
sudo apt install nvidia-driver-535 (nvidia-driver-535-server-open是服务器驱动 不能用)

sudo update-initramfs -u
sudo reboot

nvidia-smi应该可以正常输出了


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
安装cuda
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

下载匹配驱动的安装包
nvidia-smi 右上角显示的版本

wget https://developer.download.nvidia.com/compute/cuda/12.2.0/local_installers/cuda_12.2.0_535.54.03_linux.run

sudo sh cuda_12.2.0_535.54.03_linux.run


https://blog.csdn.net/weixin_43889476/article/details/124468958(安装中注意事项 尤其是取消 驱动安装 勾选 (上下箭头移动 空格勾选/取消勾选))


touch

#!/bin/bash ubuntu_.sh

vim ubuntu_.sh


echo "正在配置CUDA 12.2环境变量..."

# 备份原有的.bashrc文件
cp ~/.bashrc ~/.bashrc.backup.$(date +%Y%m%d%H%M%S)

# 添加CUDA环境变量到.bashrc
cat >> ~/.bashrc << 'EOF'

# CUDA 12.2 Environment Setup
export CUDA_HOME=/usr/local/cuda-12.2
export PATH=/usr/local/cuda-12.2/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.2/lib64:$LD_LIBRARY_PATH
export LIBRARY_PATH=/usr/local/cuda-12.2/lib64:$LIBRARY_PATH

EOF

echo "环境变量配置完成!"
echo "请执行以下命令使配置生效:"
echo "source ~/.bashrc"
echo "或者重新启动终端"

# 验证配置
echo -e "\n验证配置:"
echo "CUDA_HOME: $CUDA_HOME"
echo "PATH中的CUDA路径: /usr/local/cuda-12.2/bin"
echo "LD_LIBRARY_PATH中的CUDA路径: /usr/local/cuda-12.2/lib64"

chmod +x ubuntu_.sh

./ubuntu_.sh


source ~/.bashrc

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
构建cuda docker
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

docker构建流程:
mkdir xxx

cd xxx

touch Dockerfile

vim Dockerfile


# 基于您现有的SFM镜像
FROM sfm_docker:opencv

# 添加NVIDIA CUDA官方APT源
RUN apt-get update && apt-get install -y --no-install-recommends \
wget \
gnupg2 \
ca-certificates \
&& wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb \
&& dpkg -i cuda-keyring_1.0-1_all.deb \
&& rm -rf /var/lib/apt/lists/*

# 更新包列表并安装CUDA运行时
RUN apt-get update && apt-get install -y --no-install-recommends \
cuda-cudart-12-2 \
cuda-command-line-tools-12-2 \
cuda-libraries-12-2 \
cuda-minimal-build-12-2 \
&& rm -rf /var/lib/apt/lists/*

# 设置CUDA环境变量
ENV CUDA_HOME=/usr/local/cuda-12.2
ENV PATH=${CUDA_HOME}/bin:${PATH}
ENV LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}

# 创建符号链接
RUN ln -s /usr/local/cuda-12.2 /usr/local/cuda

# 验证安装
RUN nvidia-smi || echo "CUDA环境配置完成"


docker build -t xxx .

docker run -it --gpus all -v ~/Mytool/ros2_test/sfm-cuda-upgrade:/app/data sfm_docker:cuda-opencv /bin/bash

sudo apt-get update

sudo apt-get install pip


sudo apt install -y cuda-toolkit-12-2


cmake -DCMAKE_PREFIX_PATH=/app/data/libtorch -DCUDA_NVCC_FLAGS="-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80" -Wno-dev ..

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
OpenSplat
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


~/Mytool/ros2_test/sfm-cuda-upgrade/OpenSplat/build$ meshlab ./splat.ply

部分编译Opensplat

部分编译color-map


本地编译liteviz-gs-master

target_link_libraries(liteviz-core
GLU
depends::glad
depends::glfw
depends::imgui
depends::tinyply
depends::tbb
depends::eigen # 原cmakelists没有这一行 编译失败
)

方法一:启用 X11 转发(推荐)
‌宿主机配置‌
在运行 Docker 容器前,允许本地 X 服务器接受容器连接:

xhost +local: # 重要 允许本地连接 ‌运行容器时挂载 X11 套接字‌ 使用以下命令启动容器:

bash
Copy Code
docker run -it --rm --gpus all\
-e DISPLAY=$DISPLAY \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-v ~/Mytool/ros2_test/sfm-cuda-upgrade:/app/data \
gaussian-splatting \
/bin/bash

apt-get install -y x11-apps

./viewer --lazy-load /app/data/OpenSplat/build/splat.ply
apt-get install -y x11-apps

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/3 16:09:12

Ultimate Vocal Remover GUI完整部署指南:三分钟快速上手音频分离神器

Ultimate Vocal Remover GUI完整部署指南&#xff1a;三分钟快速上手音频分离神器 【免费下载链接】ultimatevocalremovergui 使用深度神经网络的声音消除器的图形用户界面。 项目地址: https://gitcode.com/GitHub_Trending/ul/ultimatevocalremovergui 还在为无法提取…

作者头像 李华
网站建设 2026/3/28 8:39:10

21、Procmail 规则与操作详解

Procmail 规则与操作详解 1. Procmail 规则基础 Procmail 规则遵循简单的格式,但可通过多种标志和规则编写方式来指示其解释和执行规则中的指令。 - 冒号行 :所有规则通常以 :0 开头,后面可跟一个或多个标志和指令。历史上,冒号后会跟一个数字来指定规则中的条件数量…

作者头像 李华
网站建设 2026/4/7 20:22:07

架构师基操之如何画出好的架构图?

1.前言你是否对大厂展示的五花八门&#xff0c;花花绿绿的架构设计图所深深吸引&#xff0c;当我们想用几张图来介绍下业务系统&#xff0c;是不是对着画布不知从何下手&#xff1f;作为技术扛把子的筒子们是不是需要一张图来描述系统&#xff0c;让系统各个参与方都能看的明白…

作者头像 李华
网站建设 2026/3/27 16:22:05

PlayCover终极使用手册:在Mac上完美运行iOS应用的完整方案

PlayCover终极使用手册&#xff1a;在Mac上完美运行iOS应用的完整方案 【免费下载链接】PlayCover Community fork of PlayCover 项目地址: https://gitcode.com/gh_mirrors/pl/PlayCover 想要在Apple Silicon Mac上畅玩原神、Minecraft等热门手游吗&#xff1f;PlayCov…

作者头像 李华