更新源码

This commit is contained in:
2026-04-04 18:13:40 +08:00
parent 2e20b8e2c5
commit beed35ec13
31 changed files with 1632 additions and 209 deletions

View File

@@ -0,0 +1,175 @@
# Ubuntu 24.04 + Windows 双系统安装Chromebox 10th / Kaisa / coreboot
本文给出一条可复现的双系统路径:**先装 Windows再装 Ubuntu 24.04**推荐并覆盖常见坑UEFI 启动项、GRUB 修复、时钟、以及本项目关心的 **Windows 音频驱动CoolStar/ALC5682/SOF****Linux HWE 6.17 内核编译/安装** 的衔接。
> 适用范围coreboot/UEFI 引导的 ChromeboxKaisa 类),磁盘为 NVMe/SATA 均可。
> 说明:不同机型 BIOS 菜单与快捷键略有差异,但总体流程一致。
---
## 一、安装前准备(强烈建议)
- **备份**:重要数据全量备份;如可行,先做整盘镜像。
- **USB 启动盘**
- Windows 安装盘UEFI
- Ubuntu 24.04 安装盘UEFI
- **关闭 Secure Boot如存在**:后续第三方驱动/自编译内核更省事。
- **准备空间**:建议至少 200GB按需调整
---
## 二、推荐分区规划(示例)
同一块磁盘 UEFI/GPT最稳妥
- **EFI System Partition (ESP)**3001024MBFAT32Windows 安装一般会自动建 100MB若你重装建议 300MB+
- **Windows**
- `C:`NTFS≥ 80120GB含驱动与更新更从容
- **Ubuntu**
- `/`ext4≥ 50GB建议 80GB+,内核源码/编译会占空间)
- (可选)`/home`ext4按需
- 可选swap832GB看内存与休眠需求
> 若你计划在 Ubuntu 上编译 `linux-hwe-6.17` deb建议 Ubuntu 分区额外留出 **≥3550GB 空闲**(见本仓库 `docs/meta/WORK_PROGRESS.md` 的经验)。
---
## 三、安装顺序推荐Windows → Ubuntu
### 1) 先安装 Windows
1. UEFI 启动 Windows 安装盘。
2. 选“自定义:仅安装 Windows”。
3. 只为 Windows 创建/选择目标分区(其余空间留空为“未分配”)。
4. 完成安装后进入 Windows。
**Windows 侧(本项目相关)**
- 先不要急着装“通用 Realtek 声卡包”。本机 3.5mm 往往依赖 **CoolStar SOF + ALC5682 I2S** 栈。
- 先按本仓库 Windows 指南处理:
- `docs/windows/OPERATION_Windows_Audio.md`
- `docs/windows/HARDWARE_ID_DRIVER_MAP_Windows.md`
### 2) 再安装 Ubuntu 24.04
1. UEFI 启动 Ubuntu 安装盘。
2. 选择“其他选项/手动分区”(避免覆盖 Windows
3. 在“未分配空间”里创建 Ubuntu 分区(`/`、可选 `/home`、swap
4. **引导程序安装位置**:选择整盘的 ESP通常安装器会自动识别并写入 `EFI/ubuntu/`)。
5. 完成安装并重启。
此时一般会出现 GRUB 菜单,可直接选择 Ubuntu/Windows。
### 3) 双启动机制UEFI 先选GRUB 再选(推荐日常方案)
双系统下可以把它理解成**两层**
1. **第一层UEFI固件**
根据 **启动顺序** 或你按快捷键打开的 **Boot Menu**,决定先执行 ESPEFI 分区)里的哪一个引导程序,例如:
- `EFI/ubuntu/shimx64.efi``EFI/ubuntu/grubx64.efi` → 进入 **GRUB**
- `EFI/Microsoft/Boot/bootmgfw.efi` → 直接进入 **Windows**
2. **第二层GRUB仅当 UEFI 先选了 ubuntu/GRUB 那条)**
GRUB 再给出菜单,让你选进 **Ubuntu****Windows**(链式加载 Windows 的 EFI
**日常最省事**:不必每次进固件 Boot Menu 找条目。
**推荐做法(与「先 Windows 后 Ubuntu」配合**
- 在固件UEFI里把 **ubuntu / Ubuntu或带 GRUB 的那条)** 的启动项排在 **Windows Boot Manager** **之前**,让开机默认先走 GRUB在 GRUB 里可设 **超时时间****默认启动项**
-**开启 Secure Boot**Ubuntu 往往通过 **shim** 再加载 GRUB逻辑相同只是链路上多一层签名验证。
**备选做法**(也能双系统,但步骤多):
- UEFI **默认**指向 **Windows Boot Manager**;需要 Linux 时再按快捷键进 **Boot Menu** 手动选 **ubuntu**。适合几乎只用 Windows、偶尔进 Linux 的场景。
---
## 四、如果装完 Ubuntu 看不到 Windows 启动项
在 Ubuntu 里:
1. 确认 Windows EFI 文件存在ESP 里通常是 `EFI/Microsoft/Boot/bootmgfw.efi`)。
2. 安装并启用 os-proberUbuntu 24.04 可能默认禁用):
```bash
sudo apt update
sudo apt install -y os-prober
sudo sed -i 's/^#\\?GRUB_DISABLE_OS_PROBER=.*/GRUB_DISABLE_OS_PROBER=false/' /etc/default/grub
sudo update-grub
```
3. 若仍不出现,用 `efibootmgr` 查看 UEFI 启动项(需要你能在 BIOS/Boot Menu 里也看到 Windows Boot Manager
---
## 五、GRUB/EFI 常见修复(应急)
### 1) 仅修复 Ubuntu 引导Ubuntu 启动项丢了)
用 Ubuntu Live USB 启动,挂载系统分区与 ESP 后 `chroot` 修复(简化示例,具体设备名自行替换):
```bash
sudo mount /dev/nvme0n1pX /mnt # Ubuntu /
sudo mount /dev/nvme0n1pY /mnt/boot/efi # ESP
for i in /dev /dev/pts /proc /sys /run; do sudo mount --bind $i /mnt$i; done
sudo chroot /mnt
grub-install
update-grub
exit
sudo reboot
```
### 2) Windows 启动项丢了
优先用 Windows 安装盘的“修复计算机 → 启动修复”。
若修复后 Ubuntu 启动项被覆盖,回到上面再修一次 GRUB。
---
## 六、时间/时钟(双系统最常见小坑)
Windows 默认把硬件时钟当作本地时间Linux 默认按 UTC。建议让 Windows 也用 UTC二选一即可
在 Ubuntu 执行:
```bash
timedatectl set-local-rtc 0 --adjust-system-clock
```
或在 Windows 侧按常见方法设置 RealTimeIsUniversal需自行评估避免在企业策略环境触发问题
---
## 七、与本项目相关的建议落点
### 1) Windows 音频3.5mm 无声/无插拔提示)
优先关注设备管理器中的:
- **CoolStar SOF Audio (WDM)**:若 Error经常导致“ALC5682 显示 OK 但无声”
- **Realtek ALC5682 I2S Audio**:硬件 ID 常见 `ACPI\\10EC5682\\...`
按本仓库文档走:
- `docs/windows/OPERATION_Windows_Audio.md`
- `docs/windows/HARDWARE_ID_DRIVER_MAP_Windows.md`
### 2) Linux 内核HWE 6.17 编译/安装)
若你要在 Ubuntu 24.04 上编译本仓库的 HWE 6.17 内核包:
- 源码放置:`kernel-src/linux-hwe-6.17-6.17.0/`
- 脚本入口:`scripts/ubuntu-hwe-617-build.sh`
- 经验提醒:不要在同一源码树混用裸 `make``debian/rules`;如做过 smoke-test打包前可 `make ARCH=x86 mrproper` 清洁树(详见 `docs/meta/WORK_PROGRESS.md`)。
---
## 八、验收清单(装好后最小验证)
- **UEFI 启动菜单**里能看到:
- Windows Boot Manager
- ubuntu或 GRUB
- **UEFI 启动顺序**:默认优先 **ubuntu/GRUB** 时,开机应直接出现 **GRUB 菜单**(无需每次按快捷键进 Boot Menu
- **GRUB** 能启动两系统
- Ubuntu 中:
- `lsblk` 看分区布局符合预期
- Windows 分区可只读挂载(可选,避免误写)
- Windows 中:
- 设备管理器音频相关项无明显 Error至少按 `OPERATION_Windows_Audio.md` 的顺序处理过)