1. 问题描述
x86 小主机安装 fnOS 时,安装阶段提示:
- “安装失败”
- “失败原因:[UEFI] grub-install 安装失败”
清 CMOS(拔电池/短接主板 CT 清 CMOS)后可成功安装一次;同版本同步骤第二次安装又必现失败。
2. 设备与版本信息
- 设备:x86 小主机(品牌/型号:【升腾F620】)
- 主板/BIOS:American Megatrends INC(BIOS 版本/日期:【Version 2.19.1268. Copyright (C) /2021】)
- CPU/内存:【J4125】 / 8GB
- 系统盘:Netac mSATA SSD 120GB(SATA)
- sda1 EFI ~92MB
- sda2 系统 ~23GB
- sda3 存储空间 ~86GB
- fnOS 版本:【V1.1.8-1419】(安装镜像/固件:【ISO/IMG 名称】)
- 制作启动盘:Rufus
3. BIOS 设置(已确认)
- CSM Support:Disabled
- Secure Boot:Disabled
- 启动:F12 选择 UEFI: USB(确认走 UEFI 启动)
4. 复现步骤(100%复现)
- 按上述 BIOS 设置,UEFI 启动 fnOS 安装U盘
- 正常安装 → 到引导安装阶段报错 “grub-install 安装失败”
- 拔 CMOS 电池/短接 CT 清 CMOS → 再装同版本同步骤:首次成功
- 不清 CMOS 再装一次:再次报同样错误
5. 对比验证
- Windows 10(GPT/UEFI)同机器同硬盘可一次安装成功
- 现象更像:主板 UEFI NVRAM Boot#### 启动项写入/变量区异常(清 CMOS 后短暂恢复)
6. 期望结果
- fnOS 安装器在 UEFI NVRAM 写入失败时,不要直接判定安装失败;
- 提供/默认兼容策略,避免用户每次重装都要清 CMOS。
7. 建议工程适配方向(核心)
建议安装器在 grub-install/efibootmgr 写 NVRAM 失败时:
- 支持
grub-install --no-nvram(不写 Boot#### 启动项)
- 自动部署 UEFI 回退启动路径:
EFI/BOOT/BOOTX64.EFI
- 让固件通过标准回退路径启动,绕开 NVRAM 写入异常
- 或至少在失败提示中给出明确引导修复方案(回退路径/手动修复步骤)
8. 图片(可复现证据)
已附:
-
安装失败截图(含 “UEFI grub-install 安装失败”)
-


补充判断(供工程定位参考)
从现象看更像是主板 UEFI 固件/NVRAM 变量区(Boot#### 启动项)写入异常或容量耗尽导致:清 CMOS(拔电池/短接 CT)后 NVRAM 被清空,首次安装可成功;随后再次安装同版本同步骤又在 grub-install 阶段失败。说明系统写 EFI 分区本身没问题,失败点更可能在 efibootmgr/grub-install 写入 NVRAM 启动项。希望安装器能在检测到 NVRAM 写入失败时提供兼容路径(如 --no-nvram + 自动写入 EFI/BOOT/BOOTX64.EFI 回退启动),避免用户每次重装都需要清 CMOS。