Skip to content

故障排查 ​

构建 ​

现象检查处理
no device repository-D 或 UNIXNU_DEVICE传入设备仓库
has no board.toml设备仓库布局创建 board.toml
is an EXAMPLE device repository[board] example复制示例并设置真实名称
no configurationout/<board>/.config运行 unixnu defconfig NAME
no Mu-Silicium checkout--uefi 路径传入含 Resources/Scripts/mkbootimg.py 的仓库
is not a Mu-Silicium checkout路径指向仓库根目录
no edk2 tree--edk2 或已拉取 edk2运行 unixnu fetch 或传入 Mu_Basecore
内核步骤缺少静态库build/<component>/lib<Name>.a运行设备静态库脚本
kernelcache not found--kernelcache 或 IPSW拉取 IPSW 或传入文件
does not match the kernelcache[kernel.prelink] kernelcache_sha256使用固定镜像
固件卷大小不匹配[uefi_fd] size重新构建固件或修正配置
负载超过 size_mib[payload] size_mib提高大小或移除文件
unsupported kernel argument参数字符使用字母、数字、_、.、-
command line is ... bytes参数数量缩短到 1000 字节

IPSW ​

现象检查处理
this IPSW is ...产品、版本、build使用板级描述的镜像
no Erase build identitydevice class、chip ID、board ID修正身份值
does not support range requests远程 URL使用支持 range 的服务器或本地文件
differs from the pinned sha256[ipsw.sha256]使用固定成员或更新固定值
expected exactly one arm64 slicekernelcache使用 ARM64 kernelcache

启动 ​

现象检查处理
fastboot 看不到设备驱动、线缆、bootloader 模式安装 USB 驱动并重启到 bootloader
镜像启动后复位启动镜像 header、基址和大小检查 Mu-Silicium 配置和 BootShim 参数
固件停住Silicium 随机停顿再次启动同一镜像
无显示GOP 驱动使用 console = "text" 或串口
无菜单配置路径把 unixnu.toml 放到 \EFI\UniXNU\unixnu.toml
无启动项负载卷检查 FAT 卷标、菜单项路径和卷驱动
驱动失败菜单中的第一条失败原因修正驱动路径或依赖
no loader protocol installed固件卷中的 DarwinBoot把 DarwinBoot 加入 FDS 或负载
loader revision 1 cannot accept kexts加载器 revision使用 revision 2 或移除 kext
boot refused: ...; firmware retainedDarwinBoot 日志检查内核、ADT、trust cache 和占位符
内核入口 panic页表、内核窗口、启动参数用 QEMU fixture 和启动进度日志
panic 给出 provider设备树节点或驱动静态库加入节点或启用驱动
无根设备userdata 镜像、UUID、容量刷写镜像,检查 UUID 和窗口偏移
用户态显示断言显示 provider 和启动参数检查显示驱动和 focus 参数

日志 ​

来源位置
构建out/<board>/logs/
启动管理器串口 UNIXNU: 行
加载器串口 DARWINBOOT: 行
内核串口
QEMU--log 文件和 .clean.log

检查报告 ​

sh
jq . out/<board>/boot/boot.json
jq . out/<board>/payload/payload.json
jq . out/<board>/userdata/userdata-root.json

报告记录输入哈希,与提供的文件比较。

模块来源 ​

sh
./unixnu status

输出列出每个模块和来源。本地模块会被标记并报告为未固定。

下一步 ​

Released under the BSD-2-Clause-Patent License.