银河麒麟内网需搭建本地APT镜像源实现可控补丁分发:一、双网卡服务器安装apt-mirror与Apache,配置mirror.list并确保磁盘≥150GB;二、同步官方源至/data/apt-mirror;三、软链至/var/www/html并启用Web服务;四、客户端替换或追加sources.list指向内网IP;五、执行apt update及full-upgrade完成补丁安装。

银河麒麟系统在内网环境中无法访问官方软件源,导致安全补丁和系统更新长期滞留,必须通过搭建本地镜像源实现可控、可审计的补丁分发。该方案适用于政务专网、金融内网、军工涉密网络等完全断网或策略限制外联的场景。
准备内网更新服务运行环境
在一台具备双网卡的银河麒麟V10 SP1/SP2/SP3服务器(物理机或虚拟机)上操作,其中一块网卡接入内网业务网段,另一块用于临时连接外网同步镜像(同步完成后可断开)。【该服务器磁盘剩余空间不得少于150GB,否则apt-mirror中途会因空间不足失败并损坏已下载包】。执行以下命令安装基础依赖:
sudo apt update && sudo apt install -y apt-mirror apache2
配置防火墙放行80端口:sudo ufw allow 80
配置apt-mirror同步参数
编辑主配置文件:sudo nano /etc/apt/mirror.list
清空原内容,粘贴以下配置(以V10 SP3 2403版本为例,需按实际客户端架构和版本号严格替换):
############# config ##################
set base_path /data/apt-mirror
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
set cleanscript $var_path/clean.sh
set defaultarch amd64
set nthreads 20
set _tilde 0
############# end config ##############
# 官方源地址(务必核对版本代号与客户端完全一致)
deb http://archive.kylinos.cn/kylin/KYLIN-ALL-V10-SP3 amd64 main restricted universe multiverse
deb http://archive.kylinos.cn/kylin/KYLIN-ALL-V10-SP3 amd64-updates main restricted universe multiverse
deb http://archive.kylinos.cn/kylin/KYLIN-ALL-V10-SP3 amd64-security main restricted universe multiverse
保存后创建同步目录:sudo mkdir -p /data/apt-mirror
注意:若客户端为ARM64设备,必须将所有amd64改为arm64,否则后续apt update会报“no Release file”错误。
执行首次全量镜像同步
运行同步命令:
sudo apt-mirror
该过程耗时取决于网络带宽与源站响应速度,通常需3~8小时。终端将持续输出日志,出现“Downloading 0 files, 0 bytes”且无ERROR字样即表示完成。
同步完成后,检查关键路径是否存在有效包列表:
ls /data/apt-mirror/mirror/archive.kylinos.cn/kylin/dists/V10-SP3/main/binary-amd64/Packages.gz
如该文件不存在或大小为0,则说明源地址填写有误或网络未通,需返回上一步修正mirror.list。
启用Web服务暴露镜像
启动Apache服务并设为开机自启:
sudo systemctl enable --now apache2
创建软链接将镜像目录映射至Web根路径:
sudo ln -sf /data/apt-mirror/mirror/archive.kylinos.cn /var/www/html/archive.kylinos.cn
验证服务是否生效:在内网其他麒麟终端上执行curl -I http://[服务器IP]/archive.kylinos.cn/kylin/dists/V10-SP3/,返回HTTP 200即表示Web服务已就绪。
配置客户端指向内网源
方法一:批量脚本替换(推荐)
在每台客户端执行:
echo "deb http://[服务器IP]/archive.kylinos.cn/kylin V10-SP3 main restricted universe multiverse" | sudo tee /etc/apt/sources.list
sudo apt clean && sudo apt update
方法二:保留原有源并追加(兼容性更强)
执行sudo nano /etc/apt/sources.list.d/intranet.list,写入:
deb http://[服务器IP]/archive.kylinos.cn/kylin V10-SP3 main restricted universe multiverse
deb http://[服务器IP]/archive.kylinos.cn/kylin V10-SP3-updates main restricted universe multiverse
deb http://[服务器IP]/archive.kylinos.cn/kylin V10-SP3-security main restricted universe multiverse
执行sudo apt update后,若输出中包含“Hit:...http://[服务器IP]/archive.kylinos.cn/kylin...”且无Err行,即表示内网源已成功加载。
触发补丁安装
第一步:刷新本地索引
sudo apt update
第二步:安装安全补丁(仅限security源中的更新)
sudo apt install --only-upgrade $(apt list --upgradable 2>/dev/null | grep security | cut -d'/' -f1)
第三步:执行标准升级流程(含非安全更新)
sudo apt full-upgrade -y
升级完成后,检查关键组件版本是否变更:
dpkg -l | grep linux-image | grep ii
若输出中显示新内核版本(如5.4.18-147-generic),且旧版本仍存在,说明补丁已安装但未重启——此时需执行sudo reboot使内核更新生效。

















