跳至内容
龙讯旷腾 pwmat Wiki
用户工具
注册
登录
站点工具
搜索
工具
显示页面
过去修订
全部折叠/展开
反向链接
最近更改
媒体管理器
网站地图
注册
登录
>
English
最近更改
媒体管理器
网站地图
您的足迹:
pwstudio:centos_gpu
本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。
====== PWstudio gpu 版在 centos 7.9 下安装 ====== 适用系统:CentOS 7.9\\ 包含:NVIDIA 显卡驱动、Docker、nvidia-container-toolkit <wrap important> 在开始之前,强烈建议先看一遍 [[pwstudio:readme|PWstudio 安装前必看]],尤其是里面关于"复制粘贴"和"命令提示符不是命令的一部分"的说明,本篇很多步骤都会用到。如果你还不会用工具登录服务器/上传文件,先看 [[pwstudio:mobaxterm|MobaXterm 新手教程]]。 </wrap> <wrap tip> 本篇提到的每一个安装包(驱动、Docker 离线包等),下载链接都是普通网页链接,需要你先用浏览器下载到自己电脑,再用 MobaXterm(或类似工具)上传到服务器上,然后才能在下面的命令里用到它们。 </wrap> ---- ===== 1. 系统设置 ===== ==== 1.1 关防火墙 ==== 执行下面两条命令,第一条是立即关闭防火墙,第二条是设置开机不自动启动防火墙(避免下次重启后又被打开): <code bash> sudo systemctl stop firewalld sudo systemctl disable firewalld </code> 这两条命令一般不会有任何输出,只要没有报错,就说明执行成功了。 ===== 2. 安装 NVIDIA 显卡驱动 ===== <wrap tip> **如果你的机器之前已经装过 NVIDIA 显卡驱动**(比如管理员已经帮你装好过),可以先跳到下面 2.6 小节,执行 ''nvidia-smi'' 检查一下,如果能看到显卡信息,说明驱动已经装好了,**这一整个"2. 安装 NVIDIA 显卡驱动"章节都可以跳过**,直接进入"3. 安装 Docker"章节。 </wrap> ==== 2.1 确认系统能识别到 NVIDIA 显卡 ==== <code bash> lspci | grep -i nvidia </code> 这条命令的作用是列出服务器上被系统识别到的所有 NVIDIA 硬件设备。 * **如果有输出**:一般会看到类似 ''01:00.0 VGA compatible controller: NVIDIA Corporation ...'' 这样一行或几行文字,说明服务器上确实插了 NVIDIA 显卡,并且系统硬件层面已经识别到了,可以继续往下进行驱动安装。 * **如果没有任何输出**(执行完直接回到提示符,什么都没显示):说明系统没有识别到 NVIDIA 显卡,可能是显卡没装好、没插紧,或者这台机器本身就没有 GPU。这种情况下请先联系管理员确认硬件是否正常,不要继续往下装 GPU 驱动(可以考虑改装 [[pwstudio:centos_cpu|cpu 版]])。 * 如果提示 "lspci: command not found"(命令找不到),说明系统里还没装 ''lspci'' 这个工具,可以先执行 ''sudo yum install -y pciutils'' 装上它,再重新执行上面的命令。 ==== 2.2 安装依赖包 ==== <code bash> sudo yum install -y gcc kernel-devel-$(uname -r) kernel-headers-$(uname -r) </code> <wrap important> 这里的 ''$(uname -r)'' 是命令的一部分,**它会被系统自动替换成你当前系统内核的版本号**,**不需要你手动改成别的内容(比如你自己的用户名)**。请把整行命令原封不动地复制粘贴执行即可,不要只复制一部分,也不要漏掉美元符号和括号。 </wrap> 如果这一步提示找不到软件源、连不上网(比如报 "Could not retrieve mirrorlist" 之类的错误),这是 CentOS 7 官方源已经停止维护导致的,属于常见问题,解决方法见 [[pwstudio:qa:q103|q103 centos 7.9 换源]],换源之后再重新执行本步骤。 ==== 2.3 禁用系统自带的 nouveau 驱动 ==== CentOS 系统默认自带一个开源的 nouveau 显卡驱动,它会跟 NVIDIA 官方驱动冲突,所以要先把它禁用掉。执行下面命令,会创建一个配置文件: <code bash> sudo tee /etc/modprobe.d/blacklist-nouveau.conf << 'EOF' blacklist nouveau options nouveau modeset=0 EOF </code> 这条命令执行后会把 ''blacklist nouveau'' 和 ''options nouveau modeset=0'' 这两行内容原样打印到屏幕上,这是正常的(因为 ''tee'' 命令本身会同时把内容显示出来并写入文件),不是报错。 重建内核镜像并切换为文本模式启动(依次执行命令): <code bash> 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 </code> <wrap important> 最后一条 ''sudo reboot'' 会让服务器立即重启,这是正常且必须的步骤(用来让禁用 nouveau 的设置生效)。执行后你的终端连接会断开,这是正常现象,不用担心。请等待 1-2 分钟,让服务器完成重启,然后**重新用 MobaXterm(或你使用的工具)登录一次服务器**,登录成功后再继续下面 2.4 的步骤。 </wrap> ==== 2.4 下载驱动并执行安装 ==== > 从 [[https://www.nvidia.cn/drivers/|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'' 文件**上传**到服务器上(比如上传到你重新登录后所在的家目录下),上传方法见 [[pwstudio:mobaxterm|MobaXterm 教程:上传下载文件]]第 4 节"上传 / 下载文件"。 上传完成后,在服务器终端里执行安装(注意文件名要跟你实际下载的驱动文件名一致): <code bash> sudo sh NVIDIA-Linux-x86_64-550.76.run --ui=none --no-questions --accept-license --no-opengl-files </code> 安装过程中终端会滚动输出一些安装信息,正常情况下几十秒到一两分钟就会跑完,最后回到命令提示符,不报错就说明安装成功了。如果中途报错,请把报错信息完整复制下来,用 AI 工具查一下,或者在 [[pwstudio:qa2|安装问题 Report / 解答 / 查询 / 讨论]] 里留言。 ==== 2.5 重启系统 ==== <code bash> sudo reboot </code> 同样,执行后终端会断开连接,这是正常的,等待 1-2 分钟后**重新登录服务器**。 ==== 2.6 验证驱动安装 ==== 重新登录服务器之后,执行: <code bash> nvidia-smi </code> <wrap important> 注意 ''nvidia-smi'' 中间是一个短横线 ''-'',**没有空格**,如果手动敲成 "nvidia - smi" 或者 "nvidia smi" 都会报错找不到命令,建议直接复制粘贴这行命令。 </wrap> * **如果能看到一个表格**,里面包含显卡型号(比如 GeForce RTX 3090)、驱动版本号(Driver Version)、CUDA 版本(CUDA Version)等信息,**恭喜你,这就说明驱动已经安装成功了**,可以放心进行下一步。 * **如果提示 "nvidia-smi: command not found"** 或者 "-bash: nvidia-smi: 未找到命令",说明驱动没有装成功,可以回到 2.4 检查安装过程有没有报错,也可以用 AI 工具搜索一下具体报错信息。 ---- ===== 3. 安装 Docker ===== <wrap tip> **如果你的机器已经装过 Docker 了**,可以先执行 ''docker --version'',如果能看到版本号(比如 ''Docker version 27.x.x''),说明已经装过了,**本章节可以跳过**,直接进入"4. 安装 nvidia-container-toolkit"章节。 </wrap> > 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'' 解压出来的目录): <code bash> tar -xvf docker7.tar cd docker7 sudo yum install -y *.rpm </code> 第一条命令是解压刚才上传的压缩包,会在当前目录下生成一个 ''docker7'' 文件夹;第二条命令是进入这个文件夹;第三条命令是安装文件夹里所有的 ''.rpm'' 安装包。安装过程会滚动输出很多软件包名称,属于正常现象,跑完没有报红色错误即可。 ==== 3.3 启动并设置开机自启 ==== <code bash> sudo systemctl start docker sudo systemctl enable docker </code> 第一条命令是启动 Docker 服务;第二条是设置开机自动启动 Docker(这样以后服务器重启就不用再手动启动一次了)。这两条命令一般没有输出,或者只提示"Created symlink..."之类的信息,属于正常现象。 ==== 3.4 验证安装 ==== <code bash> sudo docker run --rm swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/hello-world:latest </code> 这条命令会从镜像仓库拉取一个很小的测试镜像并运行。**如果你看到类似下面这样、以 "Hello from Docker!" 开头的一段文字**,就说明 Docker 已经成功安装并且能正常工作了: <code> Hello from Docker! This message shows that your installation appears to be working correctly. ... </code> 如果这一步报错(比如提示连不上 docker 服务),可以先检查 3.3 的两条命令有没有正常执行。 ==== 3.5 (可选)配置非 root 用户权限 ==== 这一步的作用是:让你当前登录的普通用户,以后执行 ''docker'' 相关命令时可以不用每次都加 ''sudo''。如果你不介意每次都加 sudo,这一步可以跳过。 <code bash> sudo usermod -aG docker $USER </code> <wrap important> 这里的 ''$USER'' 是系统自动变量,会自动被替换成你当前登录的用户名,**不需要你手动改成自己的用户名**,原样复制粘贴执行即可。 </wrap> > 注意:需要重新登录或重启会话才能生效,也就是说执行完这条命令后,先退出终端(输入 ''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 上传到服务器。 <wrap tip> **关于目录的说明**:这里下载的 ''nvidia-container7.tgz'',和前面 3.1 下载的 ''docker7.tar'' 是两个完全独立、互不相关的压缩包,解压后会分别得到 ''docker7'' 和 ''nvidia-container7'' 两个不同的文件夹,它们是**平级并列**的关系(都在你的家目录下),不存在谁包含谁的关系。建议把这个新文件也上传到同一个家目录下即可,不需要进入到 ''docker7'' 文件夹里面去操作。 </wrap> ==== 4.2 安装 ==== <code bash> tar -zxvf nvidia-container7.tgz cd nvidia-container7 sudo yum install -y *.rpm </code> 跟前面装 Docker 的步骤类似:第一条解压,第二条进入解压出来的目录,第三条安装里面所有的 rpm 包。 ==== 4.3 配置 Docker 运行时 ==== <code bash> sudo nvidia-ctk runtime configure --runtime=docker </code> <wrap tip> **这一步只需要执行一次**(以及下面 4.4 重启 Docker 服务也只需要一次),并不是每次要用 Docker 或者每次开机都要重新执行。这一步的作用是把 GPU 相关的运行时配置**永久性地**写入到 Docker 的配置文件里,配置好之后就一直生效了,除非你重装系统或者重装 Docker。 </wrap> ==== 4.4 重启 Docker 服务 ==== <code bash> sudo systemctl restart docker </code> 这一步是让上一步的配置生效,需要重启一次 Docker 服务(不是重启整台服务器,只是重启 Docker 这个软件本身,很快,几秒钟就好,不影响其它程序)。 ==== 4.5 验证安装 ==== <code bash> 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 </code> 这条命令会启动一个容器,并在容器**内部**执行 ''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 服务'' 开始: [[pwstudio:quickstart_gpu#宿主机安装 server.py 服务|跳转到宿主机安装 server.py 服务章节]] 跟着文档安装到结尾。 ~~DISCUSSION:off~~
pwstudio/centos_gpu.txt
· 最后更改: 2026/07/28 06:44 由
zhangchi
页面工具
显示页面
过去修订
反向链接
全部折叠/展开
回到顶部