如何配置实验室的服务器

实验室的服务器是多用户共享物理机 ,但系统会给每个账号分配「独立的用户目录」(你的目录就是 /home/你的用户名/),所有用户之间互相隔离、互不影响

  • 别人装的 python/conda/pytorch,都在别人的 /home/xxx/ 目录下,你的账号完全访问不到
  • 你自己装的所有软件,也只会存在于你的个人目录,别人看不到、用不了,也不会被别人的操作覆盖 / 搞崩;
  • 没有管理员权限 (没有sudo命令),根本没法把软件装到服务器的「系统公用目录」(比如/usr/bin),只能装在自己目录里,这是服务器的安全规则。

1. nvidia-smi → 属于【NVIDIA 显卡驱动】,是服务器公用的

  • 服务器物理机上,管理员已经装好了NVIDIA 显卡驱动 ,这个驱动是给所有用户共享的,只要显卡硬件在,所有账号都能执行 nvidia-smi 查看显卡信息;
  • 显卡驱动是系统级的底层程序,负责让服务器识别显卡。
  • 显卡驱动版本,决定了你能安装的「CUDA Toolkit 最高版本」

2. nvcc → 属于【CUDA Toolkit 工具包】,一般是没有的,需要自己装

  • nvccCUDA 编译器 ,是 CUDA Toolkit 这个软件包里的核心命令,不是显卡驱动自带的;
  • 当服务器没有装系统级的 CUDA Toolkit ,系统找不到nvcc这个命令,就会报 command not found
  • 解决方案:在个人目录下,装一个「私有版 CUDA Toolkit」,仅自己可用支持在一台服务器上装多个版本 (比如~/applications/cuda-11.8~/applications/cuda-12.8共存)

3. 【PyTorch/k2 内置的 CUDA Runtime】→ 虚拟环境内、库级、和 Toolkit解耦(torch.version.cuda查这个)

  • 命令:python -c "import torch; print(torch.version.cuda)" → 查的是这个
  • 归属:属于每个 Python 虚拟环境的私有依赖 ,装在conda envvenv里,不同环境可以完全不同版本

以安装CUDA Toolkit 12.8为例

从 CUDA 12.x 版本开始,默认不再提供 tar.gz 格式的离线包,仅保留 runfile 和 deb 格式

1. 创建用户安装目录

复制代码
mkdir applications

2. 进入用户安装目录

复制代码
cd applications

3. 下载CUDA Toolkit 12.8

复制代码
wget https://developer.download.nvidia.com/compute/cuda/12.8.0/local_installers/cuda_12.8.0_570.86.10_linux.run

4. 执行安装

复制代码
sudo sh cuda_12.8.0_570.86.10_linux.run

输密码报错

复制代码
xxx is not in the sudoers file.

账号没有服务器管理员权限(sudo 权限 ),完全不能用sudo执行任何命令

用已下载的.run包,无sudo
复制代码
sh cuda_12.8.0_570.86.10_linux.run --silent --toolkit --no-drm --override --installpath=$HOME/applications/cuda-12.8
  • --silent:静默安装,无弹窗、无交互,一路自动安装;
  • --toolkit只装 CUDA Toolkit 工具包(包含 nvcc 编译器、核心库),不装显卡驱动、不装 samples,这是唯一需要的;
  • --no-drm:跳过驱动相关的权限检查,普通用户必加;
  • --override:跳过版本兼容性检查,解决普通用户目录的权限警告;
  • --installpath=xxx:指定安装到个人目录,核心中的核心,无 sudo 的关键!

5. 配置环境变量

编辑~/.bashrc
复制代码
vim ~/.bashrc
在末尾添加以下内容
复制代码
# >>> CUDA >>>
export CUDA_HOME=~/applications/cuda-12.8
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH
# <<< CUDA <<<
生效配置
复制代码
source ~/.bashrc
6. 验证 nvcc
复制代码
nvcc --version
还有一种安装方法
提取runfile内容(仅解压,不安装),指定提取路径为你的用户目录
复制代码
./cuda_12.8.0_570.86.10_linux.run --extract=~/applications/cuda-12.8-extract
进入提取后的目录,找到cuda_toolkit目录(包含nvcc等工具)
复制代码
cd ~/applications/cuda-12.8-extract
把toolkit文件复制到~/applications/cuda-12.8(统一路径)
复制代码
mkdir -p ~/applications/cuda-12.8
cp -r ./cuda_toolkit/* ~/applications/cuda-12.8/
配置环境变量,与前面一致
相关推荐
双层吉士憨包2 小时前
如何注册Talkatone免费美国号码?实测有效方案
大数据·运维·网络
空空空空空空空空空空空空如也2 小时前
QT编译程序在Ubuntu下不进桌面直接启动和避免重复启动的方法
linux·运维·ubuntu
一人の梅雨2 小时前
义乌购商品详情接口进阶实战:批发场景下的精准解析与高可用架构
java·服务器·前端
小王努力学编程2 小时前
LangChain——AI应用开发框架
服务器·c++·人工智能·分布式·rpc·langchain·brpc
2501_945837432 小时前
事件驱动无服务器,Knative重塑云服务器原子化运算形态
服务器
有味道的男人3 小时前
如何使用招标网API获取项目详情?
java·服务器·前端
qq_406176143 小时前
深入剖析JS中的XSS与CSRF漏洞:原理、攻击与防御全指南
服务器·开发语言·前端·javascript
2501_945837433 小时前
DPU全栈卸载,NVIDIA BlueField-3释放云服务器核心算力
服务器
Suchadar3 小时前
在Linux中安装Python
linux·运维·服务器