Ubuntu For ARM64 构建

本文最后更新于 2026年2月21日 晚上

本人不对因参考这篇笔记产生的任何硬件、软件问题负责,任何问题
应由使用者个人承担。使用本文章中的方法或资源即代表你同意本条款。

前言

以往的发行版移植我一般都是基于Preinstalled Image的修改,这导致重新发行变得异常困难,因此需要学习如何构建适用特定硬件的Ubuntu操作系统。

修改

查阅资料

经过网络搜索,发现构建自定义的Ubuntu其实就是下载base系统,chroot进base系统,安装组件。如果有自定义包可以打包好在chroot脚本里面安装。还可以基于Cubic进行构建,或者解包ISO的squashfs,修改后重新打包进行构建,依旧是chroot进去修改。

尝试

仓库链接:https://github.com/sunflower2333/ubuntu-build-ci
Github提供了原生ARM64的runner,因此无需在QEMU进行构建。由于自定义系统的主要目的就是预装一些安装包和添加固件、默认配置。因此编写了脚本build_ubuntu.sh,使用debootstrap构建基础rootfs,然后进行系统包的安装。一开始测试了使用chroot的方式,效果欠佳,有些包会安装安装报错,后面采用了chroot安装systemd,再退出使用lxc进行构建的方式进行构建,更加还原真实安装环境,写了个初始版本,后面直接让copilot加功能,抽象函数和优化workflow,效果还可以接受。


Ubuntu For ARM64 构建
https://kancy.life/2025/10/07/ModUbuntu/
作者
Kancy Joe
发布于
2025年10月7日
许可协议