1. 为什么需要离线安装nmon?
在Linux系统运维工作中,服务器性能监控是日常运维的重要环节。nmon作为一款轻量级的性能监控工具,能够实时采集CPU、内存、磁盘、网络等关键指标数据。但在实际生产环境中,我们经常会遇到以下典型场景:
- 银行、证券等金融行业的交易系统服务器通常位于严格隔离的内网环境
- 政府、军工等涉密单位的服务器完全禁止连接互联网
- 工业控制系统的生产环境服务器出于安全考虑关闭所有外网访问
- 某些特殊行业的老旧系统服务器可能连基本的yum源都无法使用
在这些场景下,传统的在线安装方式(如yum install nmon)完全无法使用。作为有10年运维经验的工程师,我曾在某大型银行数据中心遇到过这样的困境:我们需要监控50多台隔离网段的交易服务器,但无法通过常规方式安装任何工具。
重要提示:离线安装的关键在于提前准备好所有依赖项。很多工程师只下载了nmon主程序,却忽略了libncurses等基础库,导致安装失败。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 准备工作:获取离线安装包
2.1 确定系统架构和版本
首先通过命令确认系统信息:
bash复制uname -m # 查看CPU架构(x86_64/arm等)
cat /etc/redhat-release # 确认CentOS具体版本
根据我的经验,CentOS7常见有以下几种组合:
- x86_64架构 + CentOS 7.6
- x86_64架构 + CentOS 7.9
- aarch64架构 + CentOS 7.6
2.2 下载nmon二进制包
官方推荐从SourceForge获取预编译版本:
code复制https://sourceforge.net/projects/nmon/files/
对于CentOS7 x86_64,我建议选择:
nmon16e_x86_rhel72 - 这个版本在RHEL7/CentOS7上最稳定
如果是其他架构,需要下载对应版本。我曾在一个arm架构的环境中使用nmon16g_aarch64版本成功运行。
2.3 收集依赖库
通过ldd命令查看依赖关系:
bash复制ldd ./nmon16e_x86_rhel72
典型依赖包括:
- libncurses.so.5
