首页/系统/Linux 运维命令速查/场景:离线/内网环境安装软件包

场景:离线/内网环境安装软件包

无外网的服务器:在联网机下载全量 RPM/DEB(含依赖)→ 传输 → 本地仓库或直接安装;要点是依赖闭包完整性。

Linux 运维命令速查系统更新于 2026-10-12
场景生产内网无外网需要装包
目标离线完成依赖完整的安装
工具链dnf download --resolve / apt-get download + dpkg -i

RPM 侧:下载全量依赖

RPM 侧:下载全量依赖
# 联网机:
dnf download --resolve --alldeps nginx -y --destdir=/tmp/pkgs
# 打包传输后,目标机离线安装:
cd /tmp/pkgs && dnf install -y --disablerepo='*' ./*.rpm

DEB 侧:下载并本地装

DEB 侧:下载并本地装
apt-get install --download-only -y nginx
# 包在 /var/cache/apt/archives/
# 目标机:
dpkg -i /tmp/debs/*.deb || apt-get -f install

更优解:内网仓库

更优解:内网仓库
createrepo_c /srv/repo       # RPM 侧生成元数据
# nginx 静态服务目录,客户端加 baseurl 指向内网仓库
一次性传输依赖容易漏(so 依赖、脚本依赖);长期方案是内网镜像仓库 + 定期同步。

易错点

  • --disablerepo='*' 忘了时离线机会尝试联网超时,安装卡住还以为死机
  • 跨大版本(el8→el9)包混用会炸依赖,内网仓库按发行版分目录

数据来源与参考

  • man 8 dnf(download 插件)
  • createrepo_c 文档
  • Debian 文档:离线包管理

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌