刚买的GPU云服务器跑nvidia-smi一片空白咋办

很多朋友第一次在云上买GPU云服务器,就是为了跑个深度学习或者大模型,结果一上来就卡在第一步:

nvidia-smi 直接报 No devices were found 或者干脆 command not found,完全不知道是机器问题还是自己操作问题。

这篇文章就围绕一个真实场景来讲:你已经在腾讯云上开好了一台GPU云服务器,准备用来跑AI项目,但 nvidia-smi 就是找不到显卡。我会一步步带你排查,并顺带说清楚在创建这台机器时,怎样选配置、选镜像,能尽量避免这类问题。

如果你还没买机器,只是先查“GPU云服务器 nvidia-smi 找不到显卡是怎么回事”,可以先把下面这台机器当成目标,照着选好规格和镜像,后面会省很多事。你可以点这个链接去腾讯云GPU云服务器页面看看具体有哪些规格:腾讯云GPU云服务器

先搞清楚:你这台GPU云服务器到底有没有显卡

很多新手一看到 nvidia-smi 报错,第一反应是“显卡坏了”,其实大部分情况只是系统层面没识别到,或者压根没装驱动。

在动手改配置前,建议先用下面几步,确认一下云后台到底给你配了没有GPU。

  1. 去控制台看实例规格:登录腾讯云控制台,找到你这台GPU云服务器,点进实例详情,看“实例规格”那一栏,是不是带“GPU”、“T4”、“A10”这类字样。如果只写了“标准型S5”、“计算型C6”,那大概率是拿成了普通CPU机器。

  2. lspci 命令看硬件:登录到机器里(Linux系统),执行:
    lspci | grep -i nvidia
    如果这里能看到类似 “3D controller: NVIDIA Corporation TU104GL [Tesla T4]” 的输出,说明硬件是有的,只是驱动没装好。如果啥也看不到,就要怀疑是不是规格选错了。

  3. 看系统里有没有nvidia模块:执行:
    lsmod | grep nvidia
    如果啥输出也没有,说明内核里根本没加载nvidia驱动,这也是 nvidia-smi 会失败的常见原因。

简单总结一下:

  • lspci 能看到NVIDIA设备,但 nvidia-smi 看不到 → 驱动问题。
  • lspci 也看不到NVIDIA设备 → 规格或镜像问题。

如果你发现是规格选错了,也不用重买,可以先关机,在控制台把实例规格改成带GPU的,比如T4、A10这些,再开机继续后面的步骤。

场景一:lspci能看到显卡,nvidia-smi报错

这种情况最常见,说明硬件在,但驱动没装好,或者装了但没加载成功。不同云厂商的GPU云服务器,默认驱动状态不太一样,有的会预装,有的需要自己装。

以腾讯云的GPU云服务器为例,如果你是在活动页购买的Linux机器,有时候会提供“GPU环境自动安装”的选项,创建后系统会自动装好GPU驱动、CUDA、cuDNN,大概需要十几分钟。但如果你选的是公共镜像自己装环境,就很有可能漏掉驱动这一步。

你可以先确认一下驱动装没装:

  • 执行 nvidia-smi,如果提示 command not found,说明连命令都没装进去。
  • 执行 which nvidia-smi,如果返回空,也说明驱动程序没装好。

对于这种情况,有两种解决思路:

  1. 用官方脚本一键装:腾讯云提供了一个GPU环境自动部署脚本,可以一次性把GPU驱动、CUDA、cuDNN都装好。大致步骤是:
    wget https://gpu-related-scripts-1251783334.cos.ap-guangzhou.myqcloud.com/gpu-auto-install/gpu_auto_install.sh
    wget https://gpu-related-scripts-1251783334.cos.ap-guangzhou.myqcloud.com/gpu-auto-install/driver460_cuda11.2.2.txt
    sudo bash ./gpu_auto_install.sh install --config_file=./driver460_cuda11.2.2.txt
    脚本跑完会自动装好驱动和CUDA,再执行 nvidia-smi 就能看到显卡信息了。

  2. 自己手动装驱动:如果你对Linux比较熟,也可以自己从NVIDIA官网下载对应驱动。大致流程是:
    – 先禁用nouveau开源驱动;
    – 安装gcc、kernel-devel等编译依赖;
    – 用 chmod +x 给驱动run文件加执行权限,然后 sudo ./NVIDIA-Linux-x86_64-xxx.run 安装;
    – 安装完重启,再执行 nvidia-smi 检查。

对新手来说,更建议用第一种脚本方式,出错概率小,也省时间。如果你还没买机器,可以直接在创建时选带“GPU环境自动安装”的镜像,这样拿到手就是可以直接跑 nvidia-smi 的状态。你可以参考这个活动页的说明:腾讯云GPU云服务器活动页

场景二:T4等显卡显示No devices were found

有些朋友用的是T4这种Tesla系列显卡,装完驱动后执行 nvidia-smi,仍然提示 No devices were found,但 lspci 明明能看到显卡。这种情况在一些云厂商的GPU云服务器上都出现过,原因之一是新版本的T4默认开启了GSP Firmware,会导致驱动在某些情况下识别不到设备。

以华为云和天翼云的相关文档为例,他们给出的解决方法是:先卸载nvidia内核模块,再关闭GSP Firmware开关,重新加载模块。

具体命令大致如下(以root权限执行):

  1. 卸载现有模块:
    rmmod nvidia_drm
    rmmod nvidia_modeset
    rmmod nvidia

  2. 关闭GSP Firmware并重新加载:
    modprobe nvidia NVreg_EnableGpuFirmware=0
    modprobe nvidia_drm
    modprobe nvidia_modeset

  3. 验证:
    nvidia-smi
    如果这时候能看到T4显卡信息,说明问题解决。

上面的命令只是临时生效,重启后会恢复。如果要持久化,需要在 /etc/modprobe.d/nvidia.conf 文件里加一行:
options nvidia NVreg_EnableGpuFirmware=0
然后再更新initramfs并重启。

虽然这是其他云厂商的文档,但在腾讯云的GPU云服务器上,如果遇到类似T4显卡 No devices were found 的问题,也可以尝试同样的方法排查。当然,你也可以直接提工单,让技术支持帮你确认是不是GSP Firmware的问题。

场景三:GPU虚拟化型实例装错驱动

还有一种情况,是你买的不是普通的计算型GPU,而是“GPU虚拟化型”实例,比如用来做图形渲染、桌面虚拟化的那种。这种实例的GPU硬件和普通Tesla卡不一样,需要装的是GRID驱动,而不是普通的NVIDIA驱动。

很多云厂商的帮助文档里都会强调这一点:

  • GPU计算型实例 → 装普通NVIDIA驱动。
  • GPU虚拟化型实例 → 装GRID驱动。

如果你在虚拟化型实例上装了普通驱动,大概率会出现 nvidia-smi 报错,或者能识别到显卡但无法正常工作。解决方法也很简单:卸载普通驱动,换成对应云厂商提供的GRID驱动。

以腾讯云的GPU云服务器为例,如果你不确定自己买的是哪种类型,可以先去控制台看实例规格说明,如果写了“GRID”或者“图形加速”,就要按虚拟化型实例来处理。相关的驱动下载和安装步骤,可以在腾讯云GPU云服务器的帮助文档里找到。

从根源避免:创建GPU云服务器时的正确姿势

与其等到 nvidia-smi 报错再排查,不如在创建机器时就尽量把坑填平。这里结合腾讯云的GPU云服务器,给你几个实用建议:

  1. 先选对实例规格:在创建实例时,实例规格一定要选带“GPU”字样的,比如T4、A10、A100这些。如果你要做大模型推理,建议至少选T4或A10起步;如果是训练,可以考虑A100。规格选错,后面再怎么折腾都没用。

  2. 选对镜像:对于新手,强烈建议选“GPU环境自动安装”的Linux镜像,比如腾讯云活动页里提供的那些,创建后会自动装好GPU驱动、CUDA、cuDNN,拿到手就能跑 nvidia-smi。如果你习惯自己装环境,也要确保选的镜像是“GPU加速型”,并且系统版本在官方支持列表里。

  3. 确认驱动状态:创建完成后,先别急着装项目,先登录机器执行 nvidia-smi,确认能看到显卡信息。如果看不到,及时排查,不要等到项目跑起来才发现。

  4. 注意安全组和网络:如果你需要用Jupyter Notebook或者远程桌面,记得在腾讯云控制台配置好安全组,放通对应的端口(比如8888),否则即使环境装好了,也访问不了。

如果你还没买机器,可以先去腾讯云GPU云服务器页面看看具体的规格和镜像选项:腾讯云GPU云服务器。选的时候注意看实例规格说明和镜像描述,尽量选“GPU加速型”和“自动安装GPU环境”的组合,这样能省很多事。

总结一下

回到最开始的问题:“GPU云服务器 nvidia-smi 找不到显卡是怎么回事?” 总结下来,无非是这么几种情况:

  • 实例规格没选对,根本没给你GPU。
  • 驱动没装,或者装了没加载。
  • T4等显卡开启了GSP Firmware,导致驱动识别失败。
  • GPU虚拟化型实例装了普通驱动。

只要按照上面的步骤,从 lspcinvidia-smi 一步步排查,大部分问题都能解决。如果你是在腾讯云的GPU云服务器上遇到这个问题,记住两个关键点:一是选对规格和镜像,二是用官方脚本一键装环境,能省掉很多麻烦。

希望这篇文章能帮你顺利跑通 nvidia-smi,早点把AI项目跑起来。如果还有其他问题,欢迎在评论区留言,我会尽量帮你解答。

厂商 配置 带宽 / 流量 价格 购买地址
腾讯云 4核4G 3M 79元/年 点击查看
腾讯云 2核4G 5M 188元/年 点击查看
腾讯云 4核8G 10M 630元/年 点击查看
腾讯云 4核16G 12M 1024元/年 点击查看
腾讯云 2核4G 6M 528元/3年 点击查看
腾讯云 2核2G 5M 396元/3年(≈176元/年) 点击查看
腾讯云GPU服务器 32核64G AI模型应用部署搭建 691元/月 点击查看
腾讯云GPU服务器 8核32G AI模型应用部署搭建 502元/月 点击查看
腾讯云GPU服务器 10核40G AI模型应用部署搭建 1152元/月 点击查看
腾讯云GPU服务器 28核116G AI模型应用部署搭建 1028元/月 点击查看

所有价格仅供参考,请以官方活动页实时价格为准。

未经允许不得转载: 本文整合公开技术资料及厂商官方信息,力求确保内容的时效性与客观性。建议您将文中信息作为决策参考,并以各云厂商官方页面的最新公告为准。云服务商优惠信息实时变动,本文内容仅供参考,最终价格请以官方活动页面公示为准。云服务器选型 » 刚买的GPU云服务器跑nvidia-smi一片空白咋办