内网机器、离线环境装 nmap你是不是也经历过这些dnf install nmap卡在刷新源半小时不动精简系统连tar命令都没有好不容易把包拷过去rpm又报一堆 Failed dependencies……这篇文章分享一个openEuler 24.03 及以后全系列通用的 nmap 离线整包只有 3 个 RPM 一键安装脚本实测 1 分钟装完直接看文末实测截图。一、适用环境先确认你的机器操作系统openEuler 24.03 及以后含 24.03 GA / SP1 / SP2 / SP3、24.09、25.03 等所有 openssl 3.0 时代版本架构x86_64场景内网 / 离线 / 无外网环境确认命令cat/etc/openEuler-releaseuname-m如果是openEuler 20.03 / 22.03openssl 1.1.1 时代老系统需要另用对应的老版本整包文末有说明。二、为什么这个包能通吃这么多版本关键在 nmap 依赖什么库。nmap 运行需要这些依赖库谁提供需要打包吗glibc 2.38系统预装❌openssl 3.0libcrypto.so.3系统预装❌pcre2正则系统预装❌zlib系统预装❌GCC 运行时libstdc/libgcc系统预装❌libpcap抓包库系统不预装✅libssh2SSH 支持系统不预装✅所以整包只需要3 个 RPMnmaplibpcaplibssh2。安装时全部是新增安装不升级、不覆盖系统已有库因此不会触发版本冲突——这就是能通吃 24.03 全系、24.09、25.x 的根本原因。包内结构nmap-offline-universal/ ├── install.sh 一键安装自动校验 安装 验证 ├── README-安装说明.txt └── rpms/ ├── SHA256SUMS 官方校验清单 ├── nmap-7.94-5.oe2403.x86_64.rpm ├── libpcap-1.10.4-1.oe2403.x86_64.rpm └── libssh2-1.11.0-2.oe2403.x86_64.rpm三、下载夸克网盘推荐直接转存下载https://pan.quark.cn/s/d390772ed8fb文件名nmap离线包及一键安装脚本-欧拉openEuler-24.03及以后通用-x86_64.tar.gz约 6.6MB四、安装步骤三步搞定第 1 步把整包拷到目标机器U 盘、scp、内网 FTP 都行。第 2 步解压tar-xzfnmap离线包及一键安装脚本-欧拉openEuler-24.03及以后通用-x86_64.tar.gz精简系统没有tar命令用 python3 一样解压有 dnf/rpm 就一定有 python3python3-cimport tarfile; tarfile.open(nmap离线包及一键安装脚本-欧拉openEuler-24.03及以后通用-x86_64.tar.gz).extractall()第 3 步一键安装root 执行cdnmap-offline-universal ./install.sh脚本自动完成环境检查 → 包完整性校验SHA-256→ rpm 安装 → 验证 nmap。第 4 步验证nmap--versionnmap-sV127.0.0.1五、实测截图openEuler 24.03 GA 真机验证以下是在 openEuler 24.03 (LTS) 机器上的完整安装过程解压 → 校验 3 个包全部 OK → 安装 → 验证 Nmap 7.94 → 安装成功六、避坑记录都是真实踩过的坑 1dnf install离线卡死Waiting for process with pid xxx to finish离线机器上 dnf 会一直卡在刷新软件源makecache。结论离线装包用 rpm不要用 dnf。卡死后清理后台进程pkill-fmakecache systemctl disable--nowdnf-makecache.timer# 可选禁止自动刷新源坑 2tar: 未找到命令精简系统没装 tar用上面的 python3 一行命令解压即可。坑 3装过的包再跑脚本报失败其实是误报rpm 有个特性命令行里出现已安装的包时rpm -Uvh会返回退出码 6RPMRC_ALREADYINSTALLED并中断事务。如果脚本直接拿 rpm 退出码判断成败就会在包早就装好的情况下误报失败。本包的 install.sh 已修复这个问题以 nmap 命令是否可用为最终标准包已装就跳过、缺哪个补哪个任何状态下重跑都不会误报。坑 4NOKEY 警告安装时看到warning: ... NOKEY是未导入 openEuler 官方 GPG 公钥的提示不影响安装。想消除可执行rpm--import/etc/pki/rpm-gpg/RPM-GPG-KEY-openEuler坑 520.03 / 22.03 老系统怎么办openEuler 底层库分两个时代20.03/22.03 用 openssl 1.1.124.03 以后用 openssl 3.0两者 ABI 不兼容无法用同一个包。老系统需要对应的老版本整包nmap 7.80 配套依赖同样是一键安装。七、总结离线装 nmap 的正确姿势确认系统版本cat /etc/openEuler-release和架构uname -m24.03 及以后 → 用本文整包20.03/22.03 → 用老版本整包解压 →./install.sh→nmap --version记住离线用 rpm不碰 dnf整包只有 6.6MB3 个 RPM 一个不少实测 1 分钟装完。觉得有用点个收藏下次内网装机直接翻这篇。本包内 RPM 均来自 openEuler 官方仓库安装前脚本会自动做 SHA-256 完整性校验。
