You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下某用户安装的CUDA等包无法被其他用户访问的求助

解决CUDA仅安装用户可用的问题及全局安装指南

这种情况我之前碰到过好几次,核心问题就是环境变量没全局配置加上部分目录权限限制,导致其他用户没法找到CUDA的执行文件和库。下面分两步解决:

一、让已安装的CUDA对所有用户可用

1. 确认CUDA的安装路径

先切换到安装CUDA的用户,执行以下命令找到CUDA的bin目录:

which nvcc

通常输出会是/usr/local/cuda/bin/nvcc,对应的库目录是/usr/local/cuda/lib64。如果你的路径不一样,记下来后面要用到。

2. 配置全局环境变量

我们需要把CUDA的路径加到所有用户的环境变量里:

  • 编辑全局配置文件,比如/etc/profile(对所有shell生效):
    sudo nano /etc/profile
    
  • 在文件末尾添加两行(如果你的CUDA路径不是默认的,替换成自己的):
    export PATH=/usr/local/cuda/bin:$PATH
    export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
    
  • 保存退出后,让配置立即生效(或者重启服务器更稳妥):
    source /etc/profile
    

3. 修复目录权限

确保其他用户能读取CUDA的安装目录:

sudo chmod -R a+rX /usr/local/cuda

这里a+rX表示给所有用户添加读权限,以及对目录的执行权限(这样才能进入目录)。

做完这三步,切换到其他用户再执行nvcc --version,应该就能正常显示版本信息了。

二、后续全局安装CUDA和cuDNN的正确姿势

为了避免再出现这种问题,以后安装的时候按以下步骤来:

1. CUDA全局安装

  • 下载CUDA安装包后,运行安装程序时,选择默认的全局安装路径/usr/local/cuda-x.x(x.x是版本号),不要选用户的个人目录。
  • 当安装程序提示“是否创建/usr/local/cuda符号链接”时,一定要选yes,这个符号链接会指向当前安装的CUDA版本,方便后续切换和全局调用。

2. cuDNN全局部署

cuDNN是解压后复制文件的方式,直接把文件放到CUDA的全局目录里:

# 先解压cuDNN的压缩包,进入解压后的目录
sudo cp include/cudnn*.h /usr/local/cuda/include
sudo cp lib64/libcudnn* /usr/local/cuda/lib64
# 给所有用户添加读权限
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*

3. 提前配置全局环境变量

安装完成后,直接按前面的方法把CUDA的路径加到/etc/profile里,这样所有新用户登录后自动加载环境变量,不用再单独配置。

验证全局有效性

切换到任意非安装用户,执行以下命令验证:

# 检查nvcc是否可用
nvcc --version
# 检查cuDNN是否能被系统找到
ldconfig -p | grep cudnn

如果都能正常输出,说明全局配置成功了。

内容的提问来源于stack exchange,提问作者HirtLocker128

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 03:20:14