选系统,选内核
安装程序会问两个大问题:装哪个系统,用哪个内核。下面说明它们是什么意思,以及拿不准时该怎么选。
系统就是你住的房子:里面的工具、菜单、装软件的方式。内核是藏在下面、和硬件打交道的发动机。两样各选一个,以后都能换,不用重装。
三个系统
Ubuntu
完整的 Linux 发行版,和服务器上的一样:apt 能装成千上万个软件,有 systemd、用户和主目录。没有网页界面:通过 SSH 和 mu300-toolkit 菜单使用。
约占用 500 MiB 内存。24.04 LTS 或 26.04 LTS。
OpenWrt
专为路由器打造的系统,自带 LuCI 网页界面:打开 http://192.168.77.1,在浏览器里设置网络、防火墙和 Wi-Fi。轻巧又快。
约占用 140 MiB 内存。OpenWrt 25.12。
带控制面板的 OpenWrt
同一个 OpenWrt,再加上一套专为这些设备写的控制面板:实时信号、频段和小区、短信、网络锁定、AT 终端、USB 模式和电源设置,全在浏览器里。
面板作者:kanoqwq。
| Ubuntu | OpenWrt | OpenWrt + 控制面板 | |
|---|---|---|---|
| 最适合 | 小型服务器、跑自己的程序、学习 Linux | 在浏览器里配置的 5G 路由器 | 还想随时看着基带的 5G 路由器:信号、频段、短信 |
| 怎么用 | SSH、mu300-toolkit;可选带 MU300 页面的 Cockpit(panel 扩展,从 v2026.10.20 起) | 网页界面(LuCI)、SSH | 带 MU300 页面的网页界面、SSH |
| 装软件 | apt | apk | apk |
| 登录用户 | ubuntu | root | root |
| 内存占用(约) | 500 MiB | 140 MiB | 安装程序未列出 |
| 网页界面语言 | 没有网页界面 | 英语、土耳其语、中文;装上 lang 扩展再多 40 种 | 英语、土耳其语、中文;装上 lang 扩展,面板再多 29 种 |
| Magisk 刷机包 | 有 | 有 | 有 |
控制面板多了什么
- 状态看板(Status dashboard):实时无线读数(信号、频段、小区、温度)、运营商名称、移动数据状态,以及当前的下载和上传速度;U30 Air 上还有电池。
- 蜂窝 > 网络锁定(Cellular > Network locks):网络模式、频段、小区和 EN-DC 锁定,重启后依然保留,还有“全部重置为自动”(Reset all to automatic)。
- 蜂窝 > 短信和短信转发(SMS forwarding):收发、删除短信,并把收到的短信转给 webhook、Telegram 聊天或另一部手机。
- 蜂窝 > 流量统计(Data usage):按天、按账单周期统计移动数据,可设每月上限。
- 蜂窝 > AT 终端(AT terminal):带保护的基带 AT 命令。
- 蜂窝 > 设备管理(Device management):USB 角色和 USB 网络模式(NCM、ECM 或 RNDIS)。
- VPN(从 v2026.10.20 起,配合 VPN 模块):概览、配置、订阅、引擎、设置和日志。
- 系统 > 语言(System > Languages)、系统 > 电源(Power)和系统 > CPU:界面语言、电源模式、充电上限(0-100 %)和 CPU 模式。
- 系统 > 终端(Terminal)(从 v2026.10.20 起):浏览器里的 root shell,只在局域网上,只为你已登录的会话打开。
- 系统 > 更新后的软件包(Packages after an update)(从 v2026.10.20 起):更新对你装过的软件包做了什么。
主题是 eamonxg 的 Aurora。完整列表见 README(英文)。
或者两个都装
选 3) 两者都装,Ubuntu 和 OpenWrt 会并排装在同一个 Linux 文件系统里;安装程序接着问先启动哪一个。切换只要一条命令加一次重启:
sudo mu300-os ubuntu # 下次重启进入 Ubuntu
sudo mu300-os openwrt # 普通 OpenWrt
sudo mu300-os openwrt-luci # 带控制面板的 OpenWrt
每种选择需要多少空间(安装程序会替你检查):
| 选择 | 需要的空闲空间 |
|---|---|
| 只装 OpenWrt | 约 800 MiB |
| 只装 Ubuntu | 约 1.6 GiB |
| 两个都装 | 约 2.4 GiB |
这已经算上了更新要用的空间:更新会保留上一个版本,方便回滚。
选哪个 Ubuntu?
| 24.04 LTS | 26.04 LTS | |
|---|---|---|
| 安装程序里的说法 | “测试时间最长,支持到 2029 年” | “最新版本(systemd 259,更新的软件包),支持到 2031 年;需要 6.18 或 7.2 内核” |
| 可用内核 | 5.4、6.18、7.2 | 只能 6.18 或 7.2 |
| 什么时候选它 | 想省心、开箱即用(默认) | 想要最新的软件包,并使用主线内核 |
Ubuntu 26.04 需要主线内核,因为它的程序用到了 5.4 没有的系统调用。已经装好的 Ubuntu 以后也能换到另一个版本,设置和数据都保留:
sudo MU300_UBUNTU=26.04 mu300-update apply # 换回去就写 24.04
选哪个内核?
三个内核跑的是同样的系统、同样的功能:热点、移动数据、短信、蓝牙、VPN、GPU,以及 KVM(/dev/kvm)。区别在于新旧程度和测试时间长短。安装程序是这样描述的:
| 选项 | 内核 | 说明 |
|---|---|---|
| 1 | 5.4 | 紫光展锐的厂商内核(基于 Android 12):测试时间最长,支持本项目的全部功能 |
| 2 | 6.18 | 主线 Linux,当前的长期支持(LTS)版本:更新的驱动和安全修复,功能相同(热点、移动数据、短信、蓝牙、VPN、GPU);暂不支持 USB-C 视频输出 |
| 3 | 7.2 | 最新的稳定版主线 Linux(目前为 7.2):最新的驱动,功能与 6.18 相同;测试比 6.18 少 |
真正有区别的地方
- Ubuntu 26.04 需要 6.18 或 7.2。
- U30 Air 的 USB 主机模式(通过 OTG 转接头接 U 盘、键盘、以太网转接器)只在主线内核上可用。
- U30 Air 充电:5.4 上由厂商的充电驱动负责;6.18 和 7.2 上从 v2026.10.12 起由
bq256xx驱动负责。v2026.10.11 及更早的主线内核不会开启充电,请先更新。从 v2026.10.20 起,主线内核还会读取 Type-C 口提供的电流(最高 2 A,而不是 500 mA);充电上限(0-100 %)三个内核都能用。 - dae(VPN 模块的 eBPF 引擎)需要 v2026.10.20 或更新的 6.18/7.2(带 BTF 和 BPF JIT 的 6.18.56 和 7.2.10);5.4 跑不了它。
- WireGuard VPN 配置需要主线内核:按 VPN 模块的说明,5.4 厂商内核没有 WireGuard。其他 VPN 类型三个内核都能用。
- 内核模块:主线内核额外带了约 360 个模块:WireGuard、SQM、隧道、USB 转接器和上网卡、NTFS、exFAT、btrfs、NFS、CIFS、dm-crypt、容器。
- 6.18 在部分板子上偶尔会在启动的头几秒卡死(README 在一块板子上测得大约每 20 次启动一次);这时设备会回到 Android,
su -c mu300-linux就能把 Linux 带回来。见故障排除。
就用安装程序的默认值 5.4:它测试得最久。要用 Ubuntu 26.04、WireGuard,或者 U30 Air 的 USB 主机模式,就选 6.18。以后想换,一条命令加一次重启:
sudo mu300-update kernel # 显示当前内核
sudo mu300-update kernel 6.18 # 或 5.4、7.2;然后重启
sudo reboot
如果新内核起不来,设备会在达到设定的失败次数后回到 Android,sudo mu300-update rollback-boot 能换回之前的内核。
其他发行版
启动流程并不在乎启动的是哪个发行版:一个系统就是一个装着 arm64 根文件系统的目录。Debian 13、Kali Linux、Arch Linux ARM 和 ImmortalWrt 都可以用本仓库构建,然后解压到其他系统旁边(Arch Linux ARM 已能构建,但还没在真机上启动过);Fedora、Alpine 等也做过调查。这部分适合自己动手构建的人:见 docs/DISTROS.md(英文)。