news 2026/2/3 1:51:40

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/1/29 12:21:22

25、使用 SpamAssassin 对抗垃圾邮件(上)

使用 SpamAssassin 对抗垃圾邮件(上) 在当今数字化时代,垃圾邮件泛滥成灾,严重影响了我们的工作和生活。SpamAssassin 作为一款强大的开源垃圾邮件过滤工具,为我们提供了有效的解决方案。本文将详细介绍 SpamAssassin 的使用方法和配置技巧,帮助你更好地应对垃圾邮件的挑…

作者头像 李华
网站建设 2026/2/1 15:13:18

Font Awesome图标子集化:5个步骤实现网站加载速度翻倍

你的网站还在为加载全量Font Awesome图标而拖慢速度吗&#xff1f;想象一下&#xff0c;你的项目只需要20个图标&#xff0c;却要加载包含2000图标的完整字体包&#xff0c;这种资源浪费就像为了喝一杯水而买下整个超市&#xff01;今天&#xff0c;我将带你深入了解Font Aweso…

作者头像 李华
网站建设 2026/1/29 12:39:46

终极SPARTA渗透测试工具完整指南:从零开始掌握网络安全评估

SPARTA是一款强大的Python GUI应用程序&#xff0c;专门用于简化网络基础设施渗透测试流程。作为SECFORCE开发的网络渗透测试工具&#xff0c;它通过直观的点击界面帮助安全专家在扫描和枚举阶段节省大量时间&#xff0c;让您专注于分析结果而非繁琐的命令设置。 【免费下载链接…

作者头像 李华
网站建设 2026/1/29 12:31:03

FlashAI多模态整合包:我的3分钟本地AI助手体验分享

FlashAI多模态整合包&#xff1a;我的3分钟本地AI助手体验分享 【免费下载链接】flashai_vision 项目地址: https://ai.gitcode.com/FlashAI/vision 开篇体验 作为一名自媒体创作者&#xff0c;我一直在寻找既能保护创作隐私又能高效处理多格式文件的AI工具。直到遇见…

作者头像 李华
网站建设 2026/1/31 23:17:21

JAVA赋能:旅行攻略搭子系统畅游新体验

在旅行场景中&#xff0c;通过 JAVA 微服务架构、AI算法与实时交互技术 构建“旅行攻略搭子系统”&#xff0c;可为用户提供 个性化行程规划、实时组队协作、智能资源匹配 的一站式解决方案&#xff0c;让旅行从“孤独探索”升级为“社交化畅游”。以下是具体实现方案与核心价值…

作者头像 李华
网站建设 2026/1/29 13:32:13

JAVA打造:旅行攻略+搭子匹配的完美组合

通过 JAVA 技术栈 构建“旅行攻略 搭子匹配”系统&#xff0c;可实现 个性化行程规划、精准社交匹配、实时协作管理 三大核心功能&#xff0c;为用户提供从“孤独探索”到“社交化畅游”的完整解决方案。以下是具体实现方案与技术亮点&#xff1a;一、系统架构&#xff1a;高并…

作者头像 李华