CentOS 7.6 安装 nvtop 完整教程

nvtop 是一款交互式 NVIDIA GPU 监控工具,提供比 nvidia-smi 更直观的可视化界面。本文针对 CentOS 7.6 系统,梳理完整安装流程,并解决安装过程中常见的网络、依赖、版本、路径等问题。

一、前提条件

  1. 系统已安装 NVIDIA 显卡驱动(418.x 及以上版本,需包含 NVML 库);
  2. 拥有 root 权限(全程使用 sudo 或切换至 root 用户);
  3. 服务器可访问外网(若不可访问,需手动下载源码包);
  4. 提前安装基础工具:sudo yum install -y wget unzip

二、安装步骤

步骤 1:安装编译依赖

nvtop 需编译源码,先安装编译环境和依赖库:

bash 复制代码
# 安装 EPEL 源(提供部分依赖)
sudo yum install -y epel-release

# 安装编译工具链和核心依赖
sudo yum install -y gcc gcc-c++ make pkgconfig ncurses-devel libdrm-devel hwloc-devel

步骤 2:获取 nvtop 源码(解决 GitHub 无法访问问题)

服务器无法访问 GitHub 时,采用「本地下载 + 上传服务器」方式:

  1. 本地下载源码包
    访问 nvtop 稳定版本页面:https://github.com/Syllo/nvtop/tags,下载 v3.0.2 版本(推荐),直链:https://github.com/Syllo/nvtop/archive/refs/tags/v3.0.2.zip。

  2. 上传到服务器
    用 SCP/SFTP 工具(如 Xftp、FinalShell)将压缩包上传至服务器 /tmp 目录。

  3. 服务器端解压

    bash 复制代码
    cd /tmp
    unzip nvtop-3.0.2.zip  # 若提示无 unzip,执行 sudo yum install -y unzip
    cd nvtop-3.0.2

步骤 3:升级 CMake(解决cmake版本过低问题)

CentOS 7.6 默认 CMake 为 2.8.12.2,nvtop 要求 3.18+,需升级:

bash 复制代码
# 卸载旧版本 CMake
sudo yum remove -y cmake

# 下载新版 CMake 二进制包(离线版可本地下载后上传至 /tmp)
cd /tmp
sudo wget https://cmake.org/files/v3.26/cmake-3.26.4-linux-x86_64.tar.gz

# 解压并创建软链接
sudo tar -zxvf cmake-3.26.4-linux-x86_64.tar.gz -C /usr/local/
sudo ln -sf /usr/local/cmake-3.26.4-linux-x86_64/bin/* /usr/bin/

# 验证版本(显示 3.26.4 即成功)
cmake --version

步骤 4:配置 CMake(解决 libsystemd/libudev 缺失问题)

默认配置会检测 AMD/Intel 显卡依赖,仅需 NVIDIA 支持时,禁用非 NVIDIA 显卡检测:

bash 复制代码
# 进入源码目录,创建编译目录
cd /tmp/nvtop-3.0.2
mkdir build && cd build

# 配置 CMake(仅启用 NVIDIA 支持)
cmake .. \
  -DNVML_RETRIEVE_HEADER=ON \
  -DCMAKE_INSTALL_PREFIX=/usr/local \
  -DAMDGPU_SUPPORT=OFF \
  -DINTEL_SUPPORT=OFF \
  -DV3D_SUPPORT=OFF

若提示「找不到 NVML」,手动指定 NVML 路径:
cmake .. -DNVML_INCLUDE_DIR=/usr/local/include/nvml -DNVML_LIBRARY=/usr/lib64/libnvidia-ml.so -DAMDGPU_SUPPORT=OFF -DINTEL_SUPPORT=OFF -DV3D_SUPPORT=OFF

步骤 5:编译并安装

bash 复制代码
# 安装到系统
sudo make install

# 刷新库缓存
sudo ldconfig

步骤 6:配置环境变量(解决 command not found 问题)

安装后 nvtop 可执行文件默认在 /usr/local/bin,需确保该路径加入环境变量:

bash 复制代码
# 临时生效(当前会话)
export PATH=/usr/local/bin:$PATH

# 永久生效(所有会话,重启后仍有效)
echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

三、验证安装

执行以下命令,正常显示 GPU 监控界面即安装成功:

bash 复制代码
nvtop

四、常见问题解决方案

问题 1:CMake 报错「CMake 3.18 or higher is required」

  • 原因:系统默认 CMake 版本过低;
  • 解决:参考步骤 3 升级 CMake 至 3.18+。

问题 2:CMake 报错「Neither libsystemd nor libudev were found」

  • 原因:默认检测 AMD/Intel 显卡依赖,无对应库;
  • 解决:配置 CMake 时添加 -DAMDGPU_SUPPORT=OFF -DINTEL_SUPPORT=OFF -DV3D_SUPPORT=OFF,仅启用 NVIDIA 支持。

问题 3:执行 nvtop 提示「-bash: nvtop: command not found」

  • 原因:/usr/local/bin 未加入 PATH,或未执行 make install
  • 解决:
    1. 先定位 nvtop 路径:sudo find / -name "nvtop" -type f 2>/dev/null
    2. 若路径为 /usr/local/bin/nvtop,执行 export PATH=/usr/local/bin:$PATH
    3. 若仅存在编译目录(如 /tmp/nvtop-3.0.2/build/nvtop),执行 sudo make install 完成安装。

问题 4:编译时内存不足报错

  • 原因:并行编译(-j 参数)占用资源过高;
  • 解决:去掉 -j$(nproc),执行单线程编译:make

五、nvtop 使用技巧

运行 nvtop 后,常用快捷键:

  • q:退出监控界面;
  • 1/2/3:切换单/双/三 GPU 视图(多卡场景);
  • s:按显存使用率排序进程;
  • c:按 GPU 利用率排序进程;
  • f:筛选指定 PID 的进程。

六、恢复系统默认配置(可选)

若需回滚配置,执行:

bash 复制代码
# 恢复原有 CMake(若需)
sudo rm -f /usr/bin/cmake /usr/bin/cpack /usr/bin/ctest
sudo yum install -y cmake

# 移除 nvtop
sudo rm -f /usr/local/bin/nvtop
相关推荐
姚青&15 小时前
四.文件处理命令-文本编辑
linux
oMcLin15 小时前
如何在 Red Hat Linux 8 上实现 Kubernetes 自定义资源管理器(CRD)扩展,支持微服务架构
linux·架构·kubernetes
济61715 小时前
linux(第十一期)--Makefile 语法简述-- Ubuntu20.04
linux
hwlfly16 小时前
Linux内核TCP网络模块深度分析
linux
杜文龙16 小时前
gitlab系统搭建AI代码自动审查多项目可复用架构
linux
晃晃OoO悠悠16 小时前
Linux下禁用触摸板
linux
济61716 小时前
linux(第九期)--交叉编译器-- Ubuntu20.04
linux·运维·服务器
zxdzxdzzxd17 小时前
Tailscale Linux 登录指南
linux·运维·服务器
DreamLife☼17 小时前
反射内存-【Linux实战】反射内存(RFM)驱动编译与应用开发全指南:从内核模块到用户态程序
linux·低延迟·反射内存·实时网·5565·rfm2gdma配置·中断延迟优化
虚神界熊孩儿17 小时前
linux下创建用户和用户组常用命令
linux·运维·创建用户