在断网的银河麒麟系统上装个软件,比找对象还难?用这个方法像点外卖一样简单!
很多用银河麒麟的朋友都遇到过这个场景:单位内网电脑不能连外网,想装个软件,折腾半天不是缺这个依赖就是缺那个库。Linux的软件安装和Windows不一样,它不是一个大包把所有东西都塞进去,而是像拼积木一样——装A需要B,装B又需要C,一层套一层。有团队统计过,一个普通的中间件安装平均要处理17层依赖关系。
以前我试过手动一个个去网上搜依赖包,下载、拷贝、安装、报错、再搜、再下……循环往复,一下午就没了。最近发现apt-offline这个工具,才算是真正解决了问题,现在分享给大家。
apt-offline 是什么?
简单说,apt-offline 就是一个“离线版的apt”。它的工作逻辑很有意思,不走寻常路——不是让你去手动一个个找依赖包,而是用一套“签名-下载-安装”的三步走策略。整个过程自动解析依赖树,你只管指定要装什么软件,剩下的依赖关系它全包了。它的工作流程特别巧妙:
- 在离线机器上生成一个“需求清单”(签名文件)
- 把清单拷到联网机器上,让apt-offline照着清单下载所有需要的包
- 把下载好的包拷回离线机器安装
整个过程不需要离线机器联网,完美适配内网场景。
实操:五步搞定离线安装
第一步:准备工作
你需要两台机器:一台能联网的电脑(和离线机同架构、同系统版本),一台需要安装软件的银河麒麟离线机。架构不一致是大坑——x86_64的包装在ARM64上肯定不行。
第二步:安装apt-offline
联网机上执行:
sudo apt update sudo apt install apt-offline -y离线机怎么装?如果系统没预装,先在联网机上下载apt-offline的deb包,拷到离线机上用dpkg -i安装。
第三步:离线机生成签名文件
在离线机上执行(以安装nginx为例):
sudo apt-offline set install_nginx.sig --install-packages nginx这条命令会生成一个nginx.sig文件,里面记录了你需要安装的软件包及其依赖信息。把这个文件拷到联网机上。
第四步:联网机下载包
在联网机上执行:
sudo apt-offline get install_nginx.sig --bundle nginx_offline.zip工具会根据签名文件自动下载nginx及其所有依赖,打包成zip。
第五步:离线机安装
把zip包拷回离线机,执行:
sudo apt-offline install nginx_offline.zip sudo apt install nginx -y搞定!nginx安装成功且正常运行。
几个实用建议
- 第一,联网机和离线机的系统版本、架构必须一致。 银河麒麟 V10 有 x86 版也有 ARM 版(飞腾、鲲鹏等),包不通用。用 ARM 的联网机给 x86 的离线机下载,装上去肯定报错。
- 第二,如果不知道软件包名怎么办? 可以在联网机上用 apt-cache search 关键词 搜索,或者在麒麟软件商店里查看。
- 第三,apt-offline 不仅能装新软件,还能做系统更新。 在离线机上执行 apt-offline set update.sig --update,同样流程走一遍,就能把系统更新包也离线搞定。
一些个人看法
银河麒麟系统离线安装软件这件事,说难不难,说简单也不简单。关键在于用对工具、走对流程。
apt-offline相比apt-mirror这种“把整个软件源搬回家”的重型方案,轻量得多;相比手动下载deb包一个个试,又靠谱得多。它解决了离线安装中最核心的痛点——依赖管理。
如果你也在内网环境里被软件安装折腾得够呛,不妨试试apt-offline。花十分钟走一遍流程,以后同类问题都能轻松搞定。
你的麒麟系统还在为离线装软件发愁吗?评论区聊聊你的遭遇,我来帮你支招!如果觉得有用,点个赞、收藏一下,下次找起来方便。也欢迎大家点个关注,持续为你分享科技资讯和IT技术的种种妙招、干货。
