用户工具

站点工具


pwstudio:centos_gpu

这是本文档旧的修订版!


PWstudio gpu 版在 centos 7.9 下安装

适用系统:CentOS 7.9
包含:NVIDIA 显卡驱动、Docker、nvidia-container-toolkit

在开始之前,强烈建议先看一遍 PWstudio 安装前必看,尤其是里面关于“复制粘贴”和“命令提示符不是命令的一部分”的说明,本篇很多步骤都会用到。如果你还不会用工具登录服务器/上传文件,先看 MobaXterm 新手教程

本篇提到的每一个安装包(驱动、Docker 离线包等),下载链接都是普通网页链接,需要你先用浏览器下载到自己电脑,再用 MobaXterm(或类似工具)上传到服务器上,然后才能在下面的命令里用到它们。


1. 系统设置

1.1 关防火墙

执行下面两条命令,第一条是立即关闭防火墙,第二条是设置开机不自动启动防火墙(避免下次重启后又被打开):

sudo systemctl stop firewalld
sudo systemctl disable firewalld

这两条命令一般不会有任何输出,只要没有报错,就说明执行成功了。

2. 安装 NVIDIA 显卡驱动

如果你的机器之前已经装过 NVIDIA 显卡驱动(比如管理员已经帮你装好过),可以先跳到下面 2.6 小节,执行 nvidia-smi 检查一下,如果能看到显卡信息,说明驱动已经装好了,这一整个“2. 安装 NVIDIA 显卡驱动”章节都可以跳过,直接进入“3. 安装 Docker”章节。

2.1 确认系统能识别到 NVIDIA 显卡

lspci | grep -i nvidia

这条命令的作用是列出服务器上被系统识别到的所有 NVIDIA 硬件设备。

  • 如果有输出:一般会看到类似 01:00.0 VGA compatible controller: NVIDIA Corporation … 这样一行或几行文字,说明服务器上确实插了 NVIDIA 显卡,并且系统硬件层面已经识别到了,可以继续往下进行驱动安装。
  • 如果没有任何输出(执行完直接回到提示符,什么都没显示):说明系统没有识别到 NVIDIA 显卡,可能是显卡没装好、没插紧,或者这台机器本身就没有 GPU。这种情况下请先联系管理员确认硬件是否正常,不要继续往下装 GPU 驱动(可以考虑改装 cpu 版)。
  • 如果提示 “lspci: command not found”(命令找不到),说明系统里还没装 lspci 这个工具,可以先执行 sudo yum install -y pciutils 装上它,再重新执行上面的命令。

2.2 安装依赖包

sudo yum install -y gcc kernel-devel-$(uname -r) kernel-headers-$(uname -r)

这里的 $(uname -r) 是命令的一部分,它会被系统自动替换成你当前系统内核的版本号不需要你手动改成别的内容(比如你自己的用户名)。请把整行命令原封不动地复制粘贴执行即可,不要只复制一部分,也不要漏掉美元符号和括号。

如果这一步提示找不到软件源、连不上网(比如报 “Could not retrieve mirrorlist” 之类的错误),这是 CentOS 7 官方源已经停止维护导致的,属于常见问题,解决方法见 q103 centos 7.9 换源,换源之后再重新执行本步骤。

2.3 禁用系统自带的 nouveau 驱动

CentOS 系统默认自带一个开源的 nouveau 显卡驱动,它会跟 NVIDIA 官方驱动冲突,所以要先把它禁用掉。执行下面命令,会创建一个配置文件:

sudo tee /etc/modprobe.d/blacklist-nouveau.conf << 'EOF'
blacklist nouveau
options nouveau modeset=0
EOF

这条命令执行后会把 blacklist nouveauoptions nouveau modeset=0 这两行内容原样打印到屏幕上,这是正常的(因为 tee 命令本身会同时把内容显示出来并写入文件),不是报错。

重建内核镜像并切换为文本模式启动(下面几条命令建议一次性整段复制粘贴执行):

sudo mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
sudo dracut /boot/initramfs-$(uname -r).img $(uname -r)
sudo systemctl set-default multi-user.target
sudo reboot

最后一条 sudo reboot 会让服务器立即重启,这是正常且必须的步骤(用来让禁用 nouveau 的设置生效)。执行后你的终端连接会断开,这是正常现象,不用担心。请等待 1-2 分钟,让服务器完成重启,然后重新用 MobaXterm(或你使用的工具)登录一次服务器,登录成功后再继续下面 2.4 的步骤。

2.4 下载驱动并执行安装

NVIDIA 官网 下载对应版本的驱动文件(如 NVIDIA-Linux-x86_64-550.76.run)
或 从如下链接

链接:http://223.70.160.60:9999/qflow/NVIDIA-Linux-x86_64-550.76.run
用户名:pwmat
密码: SimplyTheBest

以上链接需要用浏览器打开并输入用户名密码下载,下载完成后,请用 MobaXterm(或 WinSCP 等工具)把这个 .run 文件上传到服务器上(比如上传到你重新登录后所在的家目录下),上传方法见 MobaXterm 教程:上传下载文件第 4 节“上传 / 下载文件”。

上传完成后,在服务器终端里执行安装(注意文件名要跟你实际下载的驱动文件名一致):

sudo sh NVIDIA-Linux-x86_64-550.76.run --ui=none --no-questions --accept-license --no-opengl-files

安装过程中终端会滚动输出一些安装信息,正常情况下几十秒到一两分钟就会跑完,最后回到命令提示符,不报错就说明安装成功了。如果中途报错,请把报错信息完整复制下来,用 AI 工具查一下,或者在 安装问题 Report / 解答 / 查询 / 讨论 里留言。

2.5 重启系统

sudo reboot

同样,执行后终端会断开连接,这是正常的,等待 1-2 分钟后重新登录服务器

2.6 验证驱动安装

重新登录服务器之后,执行:

nvidia-smi

注意 nvidia-smi 中间是一个短横线 -没有空格,如果手动敲成 “nvidia - smi” 或者 “nvidia smi” 都会报错找不到命令,建议直接复制粘贴这行命令。

  • 如果能看到一个表格,里面包含显卡型号(比如 GeForce RTX 3090)、驱动版本号(Driver Version)、CUDA 版本(CUDA Version)等信息,恭喜你,这就说明驱动已经安装成功了,可以放心进行下一步。
  • 如果提示 “nvidia-smi: command not found” 或者 “-bash: nvidia-smi: 未找到命令”,说明驱动没有装成功,可以回到 2.4 检查安装过程有没有报错,也可以用 AI 工具搜索一下具体报错信息。

3. 安装 Docker

如果你的机器已经装过 Docker 了,可以先执行 docker –version,如果能看到版本号(比如 Docker version 27.x.x),说明已经装过了,本章节可以跳过,直接进入“4. 安装 nvidia-container-toolkit”章节。

CentOS 7.9 推荐使用离线 RPM 包方式安装,避免网络依赖(因为 CentOS 7 官方源已经停止维护,直接联网安装容易失败)。

3.1 下载 RPM 离线包并上传到服务器

链接:http://223.70.160.60:9999/qflow/docker7.tar
用户名:pwmat
密码: SimplyTheBest

用浏览器打开上面链接,输入用户名密码下载 docker7.tar 这个文件到你自己的电脑,然后用 MobaXterm 把它上传到服务器(建议上传到你当前登录的家目录,方便下一步操作)。

3.2 安装 Docker

上传完成后,回到终端,依次执行下面几条命令(比如执行 cd docker7 依赖上一条 tar -xvf 解压出来的目录):

tar -xvf docker7.tar
cd docker7
sudo yum install -y *.rpm

第一条命令是解压刚才上传的压缩包,会在当前目录下生成一个 docker7 文件夹;第二条命令是进入这个文件夹;第三条命令是安装文件夹里所有的 .rpm 安装包。安装过程会滚动输出很多软件包名称,属于正常现象,跑完没有报红色错误即可。

3.3 启动并设置开机自启

sudo systemctl start docker
sudo systemctl enable docker

第一条命令是启动 Docker 服务;第二条是设置开机自动启动 Docker(这样以后服务器重启就不用再手动启动一次了)。这两条命令一般没有输出,或者只提示“Created symlink…“之类的信息,属于正常现象。

3.4 验证安装

sudo docker run --rm swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/hello-world:latest

这条命令会从镜像仓库拉取一个很小的测试镜像并运行。如果你看到类似下面这样、以 “Hello from Docker!” 开头的一段文字,就说明 Docker 已经成功安装并且能正常工作了:

Hello from Docker!
This message shows that your installation appears to be working correctly.
...

如果这一步报错(比如提示连不上 docker 服务),可以先检查 3.3 的两条命令有没有正常执行。

3.5 (可选)配置非 root 用户权限

这一步的作用是:让你当前登录的普通用户,以后执行 docker 相关命令时可以不用每次都加 sudo。如果你不介意每次都加 sudo,这一步可以跳过。

sudo usermod -aG docker $USER

这里的 $USER 是系统自动变量,会自动被替换成你当前登录的用户名,不需要你手动改成自己的用户名,原样复制粘贴执行即可。

注意:需要重新登录或重启会话才能生效,也就是说执行完这条命令后,先退出终端(输入 exit 或直接关闭窗口),再重新登录一次服务器,这条设置才会真正起作用。

4. 安装 nvidia-container-toolkit

nvidia-container-toolkit 的作用,简单说就是让 Docker 容器”看得见、用得到”宿主机上的 NVIDIA 显卡,如果不装这个,之前装好的 GPU 驱动,Docker 容器是没法直接使用的。

推荐使用离线 RPM 包方式安装(CentOS 7 官方源支持有限)。

4.1 下载离线包并上传到服务器

链接:http://223.70.160.60:9999/qflow/nvidia-container7.tgz
用户名:pwmat
密码: SimplyTheBest

跟前面一样,先用浏览器下载这个文件,再用 MobaXterm 上传到服务器。

关于目录的说明:这里下载的 nvidia-container7.tgz,和前面 3.1 下载的 docker7.tar 是两个完全独立、互不相关的压缩包,解压后会分别得到 docker7nvidia-container7 两个不同的文件夹,它们是平级并列的关系(都在你的家目录下),不存在谁包含谁的关系。建议把这个新文件也上传到同一个家目录下即可,不需要进入到 docker7 文件夹里面去操作。

4.2 安装

tar -zxvf nvidia-container7.tgz
cd nvidia-container7
sudo yum install -y *.rpm

跟前面装 Docker 的步骤类似:第一条解压,第二条进入解压出来的目录,第三条安装里面所有的 rpm 包。

4.3 配置 Docker 运行时

sudo nvidia-ctk runtime configure --runtime=docker

这一步只需要执行一次(以及下面 4.4 重启 Docker 服务也只需要一次),并不是每次要用 Docker 或者每次开机都要重新执行。这一步的作用是把 GPU 相关的运行时配置永久性地写入到 Docker 的配置文件里,配置好之后就一直生效了,除非你重装系统或者重装 Docker。

4.4 重启 Docker 服务

sudo systemctl restart docker

这一步是让上一步的配置生效,需要重启一次 Docker 服务(不是重启整台服务器,只是重启 Docker 这个软件本身,很快,几秒钟就好,不影响其它程序)。

4.5 验证安装

sudo docker run --rm --gpus all \
 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nvidia/cuda:12.4.0-base-ubuntu22.04 \
 nvidia-smi

这条命令会启动一个容器,并在容器内部执行 nvidia-smi如果你在输出里同样看到显卡型号、驱动版本、CUDA 版本的表格信息(跟前面 2.6 步骤在宿主机上看到的类似),就说明 Docker 容器已经可以正常访问并使用 GPU 了,nvidia-container-toolkit 安装成功。

如果这一步报错(比如提示 GPU 不可见,或者 unknown flag: –gpus),一般说明前面某一步没有装对,建议依次检查:驱动是否装好(2.6)、Docker 是否装好(3.4)、本章节 4.1-4.4 是否都执行过。


5. PWstudio gpu 版安装

至此,NVIDIA 显卡驱动、Docker、nvidia-container-toolkit 这三样基础环境都已经装好了。接下来需要继续安装 PWstudio 本身,请点击链接跳转到下一步,从 宿主机安装 server.py 服务 开始: 跳转到宿主机安装 server.py 服务章节 跟着文档安装到结尾。

pwstudio/centos_gpu.1785220977.txt.gz · 最后更改: 2026/07/28 06:42 由 zhangchi