国产化替代在金融、政务、能源等领域正加速落地,越来越多的服务器从传统Linux迁移到了银河麒麟操作系统。但不少国产系统用户接手后会发现一个很头疼的问题——内网物理隔离,没办法apt install或yum install在线装软件,依赖包一个叠一个,手动找包找到崩溃,同时也有很多朋友私信我赶紧出一个搭建本地内网源的教程。别急,搭建一个内网的APT、YUM源,就能让内网所有机器像连了外网一样丝滑安装软件。今天手把手教你,一次搭好,一劳永逸。
先搞清楚:你的系统是APT还是YUM?

很多新手上来就乱套命令,结果报错一脸懵。银河麒麟桌面版用的是APT源(Debian系),服务器版用的是YUM源(RPM系) 。记住这个原则,后面所有操作都围绕它展开。
银河麒麟桌面版(apt /deb)内网本地源搭建
银河麒麟桌面版走的是APT体系,配置APT源核心就是修改/etc/apt/sources.list这个文件。系统更新时会读这个文件里的源地址,无论是公网源还是内网源,原理是一样的。
挂载
挂载之前需要根据自己的系统版本准备对应版本 ISO。
# 创建挂载目录sudo mkdir -p /mnt/kylin-isosudo mount -o loop ~/Kylin-Desktop-V10-SP1-2503-Release-20250430-x86_64.iso /mnt/kylin-iso

挂载完成之后,先看 ISO 里真实的目录名 ,之后好配置本地源访问路径:
ls /mnt/kylin-iso/dists/
配置本地源
sudo tee /etc/apt/sources.list <<EOFdeb [trusted=yes] file:///mnt/kylin-iso/ v101 main restricted universe multiverseEOF
使本地源生效
sudo apt update

验证你的本地源是否安装完成:能列出大量软件包
sudo apt list | head -20

本地源安装软件包验证
我以安装基础编译环境包build-essential为例,可以发现访问的源地址就是我们本地的源文件路径:

银河麒麟服务器版(yum /rpm)内网本地源搭建
服务器版银河麒麟配置YUM源,核心是修改 /etc/yum.repos.d 目录下的 .repo 文件。
系统环境

创建挂载点并挂载ISO
mkdir -p /mnt/kylin-isomount -o loop ~/Kylin-Server-V10-SP3-2403-Release-20240426-X86_64.iso /mnt/kylin-iso

创建本地源配置文件
# 备份系统自带的源文件 mv /etc/yum.repos.d/kylin_x86_64.repo /etc/yum.repos.d/kylin_x86_64.repo.bak tee /etc/yum.repos.d/local-iso.repo <<EOF[kylin-iso]name=Kylin Local ISObaseurl=file:///mnt/kylin-isoenabled=1gpgcheck=0priority=1EOF

本地源生效
yum clean allyum makecache

安装软件包验证本地源

网页访问http内网源

用Nginx发布HTTP内网源

本地源配好之后,只有一个电脑主机能用。想让内网所有机器都能访问,需要配一个HTTP服务,这里比较推荐Nginx——轻量、并发性能好、配置简单。
安装 nginx
下面我说的是在线命令行安装的方式,如果是内网环境的,可以参考我之前文章有写如何离线下载软件包进行内网环境安装。
# 银河麒麟桌面操作系统sudo apt install -y nginx# 银河麒麟服务器操作系统sudo yum install -y nginx
创建源目录,把 ISO 内容拷贝过去

源目录权限确保可访问
sudo chmod -R 755 /var/www/html/kylin
nginx配置
以下是我的nginx配置,可以进行参考,多说一句配置完成nginx之后记得开启防火墙端口。
user root;worker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; root /var/www/html; autoindex on; autoindex_exact_size off; autoindex_localtime on; location / { allow all; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }}

配置http源的访问客户端
客户端配置也很简单:APT系统的机器修改/etc/apt/sources.list,把源地址替换成http://你的服务器IP/; YUM系统的机器修改.repo文件,把baseurl 指向同样的HTTP地址。之后内网所有服务器就可以像在公网一样用包管理工具一键安装了。
![]() | ![]() |
安装软件包验证http内网源

避坑指南
直接说一下几个容易踩的坑:
架构匹配是个大坑。 银河麒麟支持x86_64、ARM64、LoongArch等多种架构,包的baseurl和镜像必须与服务器CPU架构严格对应,ARM的包装不到x86上,用错了安装时直接就失败。 元数据生成是关键。 YUM仓库必须有 reodata 目录,不然yum会报repomd.xml not found 。挂载ISO时ISO自带repodata,但如果你手动复制RPM包,必须用 createrepo 重新生成,而且每次新增包后都要执行createrepo --update。 路径别写错。 baseurl格式写错是新手最常见的错误——file:后面是三个斜杠,http:后面是两个斜杠,而且路径大小写必须和实际目录完全一致。 别忘备份。 不管是改 sources.list 还是 .repo 文件,修改前一定先备份原文件。配置错了还能快速恢复,否则排查半天才发现是配置文件格式问题,真的非常浪费时间。
写在最后
搭一次本地源确实需要花点时间,但这件事属于“一次投资、长期收益”。对于内网运维来说,本地源不是锦上添花,而是效率刚需。从挂载ISO开始,到用Nginx发布成HTTP内网源,整个过程并不复杂,但能让你告别手动传包和依赖地狱。希望这份经验对大家有帮助!
如果这篇文章对你有帮助,欢迎点赞、收藏、转发,让更多正在用国产操作系统的朋友知道!你的支持是我更新分享的最大动力!
👨💻关于博主:大家好,我是码农拿铁,专注分享IT热点、资源干货和系统技巧:带你玩转 🪟 Windows | 🐧 国产信创Linux | 🍎 macOS | 📱 iOS ,让你的设备更好用!👇 点击关注,下次找我不迷路!
夜雨聆风
