真实场景:
ARM 麒麟服务器在内网,
不能上网、不能装仓库、不能随便拷工具;
你手上只有一台 x86 麒麟桌面,
却被要求:
“把 ARM 版本的软件准备好,能离线安装,依赖也要齐全。”
如果你还在:
网上乱找
.deb靠感觉猜
arm64 / amd64在 ARM 机器上反复
dpkg -i报错补依赖
那这篇文章,你一定要看完。
一、先搞清楚一件事:
“ARM 软件,真不一定要在 ARM 上下载”
在 Debian / Ubuntu / 麒麟 这套体系里,有一个非常成熟但很少被讲清楚的能力:
APT 支持交叉架构下载(Multi-Arch)
意味着什么?
👉 你可以在 x86 系统上,直接下载 ARM 架构的软件包
👉 不安装、不污染系统
👉 拿走就是一个标准、合规、可审计的 .deb
二、第一步:确认你“要给谁下包”
在任何国产化环境里,第一原则只有一句话:
不要凭感觉猜架构。
在 ARM 麒麟 / x86 麒麟上,统一用这三条命令确认:
uname -m
dpkg --print-architecture
lscpu | grep Architecture你会看到两种典型结果:
结论记住即可:
x86_64↔amd64aarch64↔arm64
后面所有下载,只围绕这一点展开。


三、核心操作来了:APT 交叉架构下载
假设现在的场景是:
当前机器:麒麟 V10 x86
目标机器:麒麟 V10 ARM(aarch64)
目标软件:Flameshot(截图工具)
① 在 x86 麒麟上启用 arm64 架构
sudo dpkg --add-architecture arm64
sudo apt update 这一步不会改变你系统的运行架构
只是告诉 APT:
“我也认识 arm64 包了。”

② 只下载,不安装(关键设计)
apt download flameshot:arm64
上面的提示这不是错误,而是 APT 的安全提示。
APT 发现:
_apt写不了目录但这是用户主动执行的下载命令
于是它自动做了一件事:
退出沙盒,用 root 权限继续下载
所以才会看到这句提示。
执行完成后,你会在当前目录看到:
flameshot_*.deb注意三点:
✔ 是 arm64
✔ 是 官方仓库来源
✔ 没有安装到本机
这一步,已经完胜 90% 的“离线下载方案”。
四、离线环境真正会踩坑的地方:依赖
很多人失败,不是软件下不来,
而是:
ARM 机器离线安装时,缺 Qt / 缺库 / 缺一堆依赖
正确做法是:在 x86 机器一次性准备好
① 查看 ARM 依赖
apt depends flameshot:arm64root@kylin-pc:/home/kylin# apt depends flameshot:arm64
flameshot:arm64
依赖: <hicolor-icon-theme:arm64>
hicolor-icon-theme
依赖: libqt5svg5:arm64
依赖: libc6:arm64 (>= 2.17)
依赖: libgcc-s1:arm64 (>= 3.0)
依赖: libqt5core5a:arm64 (>= 5.10.0)
依赖: libqt5dbus5:arm64 (>= 5.0.2)
|依赖: libqt5gui5:arm64 (>= 5.10.0)
依赖: libqt5gui5-gles:arm64 (>= 5.10.0)
依赖: libqt5network5:arm64 (>= 5.0.2)
依赖: libqt5widgets5:arm64 (>= 5.11.0~rc1)
依赖: libstdc++6:arm64 (>= 5.2)
|推荐: xdg-desktop-portal-gtk:arm64
xdg-desktop-portal-gtk
|推荐: <xdg-desktop-portal-gnome:arm64>
|推荐: xdg-desktop-portal-kde:arm64
推荐: <xdg-desktop-portal-wlr:arm64>
推荐: grim:arm64
grim
建议: <ca-certificates:arm64>
ca-certificates
建议: openssl:arm64
openssl
root@kylin-pc:/home/kylin#
② 批量下载依赖(示例)
apt download \
flameshot:arm64 \
hicolor-icon-theme:arm64 \
libqt5svg5:arm64 \
libc6:arm64 \
libgcc-s1:arm64 \
libqt5core5a:arm64 \
libqt5dbus5:arm64 \
libqt5gui5:arm64 \
libqt5gui5-gles:arm64 \
libqt5network5:arm64 \
libqt5widgets5:arm64 \
libstdc++6:arm64 \
xdg-desktop-portal-gtk:arm64 \
grim:arm64原则只有一个:
在能联网的 x86 机器,把 ARM 该用的东西一次性下齐。
五、在 ARM 麒麟上,离线安装就是“顺水推舟”
拷贝 .deb 到 ARM 机器后:
sudo dpkg -i *.deb没有网络
没有仓库
没有猜测
一次装完,成功率极高
六、为什么说这种方式“国产化最优雅”?
和常见做法对比一下
特别适合:
国产化替代环境
涉密 / 内网
运维交付
软件白名单审批
七、一句话给你“运维级总结”
APT 交叉架构下载,本质是:
用 x86 的“联网能力”,
为 ARM 的“隔离环境”提前准备弹药。
会用这一招,你就不再是“装软件的人”,
而是 能设计交付方案的人。