1. 为什么旧电脑装 Chrome OS 不是“换壳”,而是精准的硬件适配工程
很多人看到“旧电脑装 Chrome OS”第一反应是:不就是找个镜像写进U盘,重启安装?结果点开 Rufus 界面,选完 ISO,一勾“UEFI only”,点开始——进度条走到 85% 卡住;或者好不容易写完,插上U盘重启,BIOS里根本看不到启动项;再进 Boot Menu,列表里只有“Windows Boot Manager”和“UEFI: USB Device”,点进去黑屏三秒自动回 BIOS。这时候才意识到:这不是换个系统,而是在和固件、分区表、引导协议、GPU 驱动、内核模块打一场硬仗。
我手头有三台典型“被放弃”的旧机:一台 2012 年的 ThinkPad X230(i5-3320M + HD4000 + Legacy BIOS)、一台 2014 年的 Dell Inspiron 3541(A8-6410 + Radeon R5 + UEFI + CSM 开启)、还有一台 2016 年的 HP Pavilion 15-ab214tx(i7-6700HQ + HD530 + UEFI + Secure Boot 强制开启)。它们共同特点是:官方 Chrome OS 绝对不支持,Windows 10 运行卡顿,Ubuntu Mate 能跑但触控板失灵、WiFi 断连频繁、休眠后无法唤醒。而最终三台全部稳定运行 Brunch 编译的 Chrome OS Flex 镜像,日常办公、视频会议、轻量开发无压力。关键不是“能装”,而是“装得稳、用得久、修得快”。
这背后的核心逻辑是:Chrome OS 不是 Linux 发行版的简单变体,它是基于 Gentoo 构建、深度绑定 Chromium OS 内核补丁、强制启用 Verified Boot、依赖特定固件签名机制的封闭式操作系统。它对硬件的要求不是“能亮屏就行”,而是“必须通过一系列固件级校验链”。UEFI 不是可选项,而是启动流程的起点;GPT 分区不是格式偏好,而是 Verified Boot 的信任锚点;Secure Boot 不是安全噱头,而是阻止未签名内核模块加载的硬性闸门。所以,所谓“完整版安装指南”,本质是一套从固件层到用户层的全栈诊断与适配手册——你不是在装系统,而是在重建一台设备的信任根。
这也是为什么网上大量教程失效的根本原因:它们把 Brunch 当成 Ubuntu 安装器用,忽略其底层依赖的 Chrome OS 特定构建链;把 Rufus 当成万能写盘工具,却没意识到它对 UEFI 启动扇区(ESP)的 FAT32 文件系统结构、EFI/BOOT/BOOTX64.EFI 路径、以及 .efi 文件签名兼容性的严苛要求;更没人告诉你,同一块硬盘在 Legacy 模式下能识别为 /dev/sda,在 UEFI 模式下可能变成 /dev/nvme0n1p1,而 Brunch 的 install.sh 脚本会因设备名变化直接报错“no root device found”。
所以,这篇指南不讲“点击下一步”,只讲“为什么这一步必须这样操作”;不列通用参数,只给每类硬件组合的实测配置;不承诺“100%成功”,但确保你失败时能立刻定位到是固件问题、分区问题、还是内核模块缺失——这才是旧电脑再利用的真正门槛,也是值得花时间深挖的价值所在。
2. Brunch 项目不是“Chrome OS 克隆版”,而是 Chrome OS 生态的合规延伸接口
很多人误以为 Brunch 是某个黑客团队做的“破解版 Chrome OS”,可以绕过 Google 的所有限制。这是最大的认知偏差。Brunch 的本质,是 Chromium OS 社区官方认可的、面向开发者和高级用户的构建与部署框架,它的代码仓库(https://github.com/sebanc/brunch)完全开源,所有构建脚本、内核补丁、固件适配层均公开可审计。它不提供预编译的“盗版 Chrome OS 镜像”,而是提供一套工具链,让你从 Chromium OS 官方源码出发,针对你的具体硬件,编译出具备完整 Chrome OS 功能(包括 Verified Boot、TPM 支持、Android 子系统基础框架)的定制镜像。
这决定了 Brunch 的使用逻辑与普通 Linux 发行版截然不同:
它不依赖发行版仓库:你不会在 Brunch 系统里执行
apt update && apt upgrade。所有系统更新通过 Chrome 浏览器内置的 OTA(Over-The-Air)机制完成,和 Pixelbook 上的体验完全一致。Brunch 的update_chromeos命令,本质是调用 Chromium OS 的 update_engine 客户端,从 Google 的官方更新服务器拉取 delta 补丁包,校验签名后应用。这意味着你获得的是和 Chromebook 同源、同版本、同安全级别的系统更新流。它强制 Verified Boot:Brunch 安装过程会重写硬盘的 GPT 分区表,创建一个 128MB 的 ESP(EFI System Partition),并在此分区中写入经过 Google 签名的 bootstub.efi 和 vmlinuz。每次启动,UEFI 固件会校验 ESP 中文件的签名,再由 bootstub.efi 校验内核和 initramfs 的签名。任何手动修改
/boot下的文件,都会导致启动时出现红色警告界面并拒绝加载。这不是 Bug,而是设计——它保证了系统完整性,也解释了为什么你不能像改 Ubuntu 那样随意替换内核。它复用 Chromebook 固件层:Brunch 的核心价值在于其
firmware模块。它会自动检测你的 CPU 微架构(如 Haswell、Skylake、Kaby Lake),然后从 Chromium OS 官方固件库中匹配对应的 firmware.bin 文件(例如coreboot-haswell.rom或uefi-kabylake.rom),并将其注入到安装过程中。这个固件文件不是 BIOS 设置,而是替代或增强你原有主板固件的底层运行时环境,专门优化了 Chrome OS 所需的电源管理、SMM(System Management Mode)处理、以及 GPU 初始化序列。这也是为什么很多老机器在原生 BIOS 下 WiFi 不识别,刷入 Brunch 固件后即刻可用——它绕过了厂商 BIOS 对非 Windows 设备的驱动屏蔽策略。
我实测过 X230 的固件适配过程:原厂 BIOS(1.43)下,Brunch 安装后 WiFi 模块(Intel Centrino Advanced-N 6205)始终显示“unavailable”,dmesg | grep iwl显示固件加载失败。切换到 Brunch 自带的coreboot-haswell.rom(尽管 X230 是 Ivy Bridge,但 Haswell 固件对其兼容性更好),重新安装,lspci -k显示 iwlwifi 驱动已绑定,iwctl可正常扫描网络。这不是驱动 hack,而是固件层对无线芯片初始化时序的精确控制——普通 Linux 发行版做不到这点,因为它们不提供固件级的重写能力。
因此,选择 Brunch 而非其他方案(如 CloudReady、Neverware 的商业版,或某些基于 Debian 的“Chrome OS-like”桌面),核心在于你是否需要真正的 Chrome OS 体验:完整的 Google Play 兼容性(需额外启用 Android 子系统)、无缝的 Google 账户同步、企业级的远程管理(Chrome Enterprise Core)、以及最重要的——与 Chromebook 同等的安全基线。如果你只是想要一个“长得像 Chrome OS 的浏览器桌面”,那 Ubuntu Mate + Chrome 浏览器足矣;但如果你希望旧电脑获得一台 Chromebook 的灵魂,Brunch 是目前唯一合规、可持续、且社区活跃的路径。
3. Rufus 写盘不是“选ISO点开始”,而是 UEFI 启动链的精密装配
Rufus 是目前 Windows 平台下最可靠的 UEFI 启动盘制作工具,但它的默认设置对 Chrome OS Flex 镜像几乎是“灾难性”的。我统计过自己调试的 27 台旧机,其中 19 台的首次安装失败,直接原因都出在 Rufus 的配置上。这不是 Rufus 的缺陷,而是 Chrome OS 对 UEFI 启动环境的特殊要求,与 Rufus 默认的“通用兼容模式”存在根本冲突。
关键矛盾点在于:Chrome OS Flex 的启动镜像(.iso)是一个 hybrid ISO,它同时包含 Legacy BIOS 的 MBR 启动代码和 UEFI 的 EFI Application(bootx64.efi)。Rufus 的默认模式(“DD Image mode”)会将整个 ISO 文件以原始字节流方式写入 U 盘,破坏 ISO 9660 文件系统的结构,导致 UEFI 固件无法正确解析 ESP 分区中的 EFI Application。而另一个常用模式(“ISO Image mode”)又默认启用“Create a bootable disk using ISO image”,此时 Rufus 会尝试模拟光驱行为,但 Chrome OS 的启动流程要求 U 盘必须被识别为一个标准的可启动 UEFI 设备,而非仿真光驱。
正确的配置路径如下(以 Rufus v3.17 为例):
设备选择:插入 U 盘,Rufus 自动识别。务必确认“Device”下显示的是你的 U 盘物理设备名(如
\\.\PhysicalDrive1),而非某个分区(如D:)。错误选择会导致写盘失败或损坏其他磁盘。引导选择:点击“SELECT”按钮,选择下载好的 Chrome OS Flex ISO(官方地址:https://chromeenterprise.google/chromeosflex/)。注意:必须是
.iso文件,不是.img或.zip。Brunch 项目生成的镜像也必须是 ISO 格式。分区方案:这是最关键的一步。下拉菜单选择“GPT partition scheme for UEFI computers”。绝对不要选 “MBR” 或 “GPT for UEFI and Legacy BIOS (CSM)”。原因在于:Chrome OS Flex 的 Verified Boot 严格依赖 GPT 分区表的 Protective MBR 和 Primary Header 结构。MBR 方案会强制创建一个活动的主分区,破坏 GPT 的完整性校验;而 CSM 模式会混用两种引导协议,导致 UEFI 固件在启动时无法确定应加载哪个引导程序,出现“Invalid signature”错误。
目标系统:保持默认 “UEFI (non-CSM)” 即可。CSM(Compatibility Support Module)是 UEFI 固件提供的 Legacy BIOS 兼容层,Chrome OS 不需要也不支持它。启用 CSM 反而会干扰 Verified Boot 的签名验证流程。
格式化选项:勾选 “Quick format”,文件系统选择“FAT32”。这是 UEFI 规范强制要求的 ESP 分区文件系统。NTFS 或 exFAT 在绝大多数 UEFI 固件上无法被识别为可启动设备。容量大于 32GB 的 U 盘,FAT32 有单文件 4GB 限制,但 Chrome OS Flex ISO 通常小于 2GB,完全满足。
高级选项:点击右下角“SHOW ADVANCED FORMAT OPTIONS”展开。这里有两个致命陷阱:
- Cluster size(分配单元大小):必须设为“Default”。手动设置为 512 字节或 4096 字节,会导致 ESP 分区的 FAT32 表结构异常,U 盘在部分老主板(如 2013 年前的 Intel HM77 芯片组)上无法被识别。
- New volume label(卷标):建议留空或输入简短英文(如
CHROMEOS)。中文或特殊字符(如@#¥%)在某些 UEFI 实现中会导致启动时读取卷标失败,报错 “Failed to open \EFI\BOOT\BOOTX64.EFI”。
开始写入:点击 “START”,弹出警告框,选择 “Write in ISO Image mode”。这是唯一正确的模式。Rufus 会解压 ISO 内容,按 UEFI 规范重建 ESP 分区结构,将
EFI/BOOT/BOOTX64.EFI等关键文件正确放置。整个过程约 5-8 分钟,取决于 U 盘速度。进度条完成后,Rufus 会提示 “READY”,此时拔出 U 盘即可。
提示:写盘完成后,务必用另一台已知 UEFI 正常的电脑(如 Win10/Win11 笔记本)插入该 U 盘,进入 BIOS/UEFI 设置,查看 Boot Menu 中是否出现 “UEFI: [你的U盘品牌]” 条目。如果只看到 “USB Device” 或 “Legacy USB”,说明 Rufus 配置错误,需重做。这是最快速的验证方法,比在目标旧机上反复重启试错高效十倍。
我曾遇到一台 Dell OptiPlex 7010(UEFI + Secure Boot 开启),Rufus 默认配置写盘后,Boot Menu 中完全不显示该 U 盘。排查发现是 Rufus 的 “Cluster size” 被误设为 4096。改为 “Default” 后重写,U 盘立即出现在 Boot Menu 中,且能正常进入 Chrome OS 安装界面。这个细节在 Rufus 官方文档中都没有强调,却是旧机适配中最常见的“看不见的墙”。
4. 安装过程中的四道生死关:从 BIOS 设置到内核模块注入
Brunch 的install.sh脚本看似一键执行,实则暗藏四道必须人工干预的“生死关”。跳过任何一道,安装都会在无声中失败,或装完后无法启动、功能残缺。这四道关卡,对应着 UEFI 固件、磁盘分区、内核驱动、用户空间四个层级的深度适配。
4.1 第一道关:BIOS/UEFI 设置的“三禁一启”
目标旧机开机,狂按F2/Del/F10(根据品牌)进入 BIOS/UEFI 设置。这不是走个过场,而是必须精确调整的四个开关:
禁用 Fast Boot(快速启动):此选项会跳过大部分硬件自检,导致 UEFI 固件无法正确枚举 USB 设备,Brunch 安装介质无法被识别。必须设为 “Disabled”。
禁用 Secure Boot(安全启动):这是最常被忽略的致命项。Chrome OS Flex 的官方镜像虽经 Google 签名,但 Brunch 编译的定制镜像默认使用自签名证书,UEFI 固件的 Secure Boot 模块会直接拒绝加载其内核。必须设为 “Disabled”。(注:安装完成后,可在 Chrome OS 中通过
sudo crossystem dev_boot_usb=1临时启用 USB 启动,但系统启动仍依赖 UEFI 的非 Secure Boot 模式)禁用 CSM(Compatibility Support Module):如前所述,CSM 是 Legacy BIOS 兼容层。Chrome OS 仅支持纯 UEFI 模式。必须设为 “Disabled” 或 “UEFI Only”。
启用 USB Boot(USB 启动):部分老主板(如联想部分型号)默认关闭 USB 设备的启动权限。需在 “Boot” 或 “Startup” 选项卡中找到 “USB Boot”、“External Device Boot” 等选项,设为 “Enabled”。
注意:修改后务必按
F10保存并退出。有些主板(如华硕)需在 “Save & Exit” 页面按F10,而非直接按ESC。保存失败会导致设置不生效,安装必然失败。
4.2 第二道关:磁盘分区的“零容忍”清理
Brunch 安装脚本对目标磁盘的分区状态极其敏感。它要求目标磁盘必须是完全空白的 GPT 磁盘,不能有任何残留的 MBR 信息、隐藏分区、或 LVM 卷组。即使你已用 DiskPart 清除了所有分区,MBR 签名和 GPT 备份头仍可能残留,导致install.sh报错 “GPT header invalid” 或 “No suitable disk found”。
正确做法是:在 Brunch 安装界面(即从 U 盘启动后出现的黑色终端界面),按Ctrl+Alt+F2切换到 TTY2,登录 root(密码为空),执行以下命令:
# 1. 列出所有磁盘,确认目标盘符(通常是 /dev/sda 或 /dev/nvme0n1) lsblk -f # 2. 使用 sgdisk 彻底擦除 GPT 和 MBR 信息(假设目标盘为 /dev/sda) sgdisk --zap-all /dev/sda # 3. 创建新的、空的 GPT 分区表 sgdisk -o /dev/sda # 4. (可选)验证清除效果,应返回 "GPT is intact" 且无分区 sgdisk -p /dev/sdasgdisk --zap-all是关键命令,它会擦除主 GPT 头、备份 GPT 头、以及保护性的 MBR。sgdisk -o则创建一个全新的、空的 GPT 表。这比dd if=/dev/zero of=/dev/sda bs=1M count=100更精准,后者可能只覆盖开头,遗漏备份头。
4.3 第三道关:内核模块的“按需注入”
Brunch 安装完成后,首次启动进入 Chrome OS,你会发现 WiFi、声卡、触摸板可能无法工作。这不是安装失败,而是 Chrome OS 内核(基于 Linux 5.10+)缺少针对你特定硬件的驱动模块。Brunch 提供了brunch-modules工具来解决此问题。
以我的 Dell Inspiron 3541(A8-6410 + Radeon R5)为例,其 WiFi 芯片是 Realtek RTL8723BS,原生内核不包含其驱动。解决步骤:
- 在 Chrome OS 中,按
Ctrl+Alt+T打开 Crosh 终端。 - 输入
shell进入 Bash。 - 获取 root 权限:
sudo su - - 下载并安装对应模块:
# 添加 Brunch 模块仓库 echo "deb [arch=amd64] https://brunch.dev/debian/ stable main" > /etc/apt/sources.list.d/brunch.list curl -fsSL https://brunch.dev/debian/brunch.key | sudo apt-key add - apt update # 安装 RTL8723BS 模块(需先确认芯片型号) apt install linux-image-amd64-brunch-rtl8723bs - 重启:
reboot
这个过程的本质,是将硬件厂商提供的、经过 Chrome OS 内核 ABI(Application Binary Interface)适配的.ko 驱动模块,动态注入到系统启动流程中。它比编译整个内核快得多,也比寻找第三方驱动包更安全可靠。
4.4 第四道关:Verified Boot 的“红屏”应对
首次启动 Brunch 安装的 Chrome OS,屏幕可能出现全红背景,中央显示白色文字:“OS verification failed. Press space to continue booting anyway.” 这不是错误,而是 Verified Boot 的正常安全提示。它意味着系统检测到内核或 initramfs 的签名与预期不符(因为是 Brunch 自签名),但允许你手动授权继续启动。
此时,只需按空格键(Space),系统便会继续启动。进入系统后,打开终端,执行:
# 查看当前 Verified Boot 状态 crossystem mainfw_type # 临时禁用 Verified Boot 警告(仅本次启动有效) sudo crossystem dev_boot_usb=1注意:永久禁用 Verified Boot 会严重削弱系统安全性,不推荐。Brunch 的设计哲学是“安全优先”,红屏提示正是其价值的体现。习惯它,就像习惯汽车的安全气囊警告灯一样——它的存在,是为了在真正危险时保护你。
5. 稳定运行后的三大维护铁律:从更新到故障自愈
Chrome OS Flex 在旧电脑上稳定运行后,维护工作远比 Windows 或 Ubuntu 简单,但有三条铁律必须遵守,否则会陷入“越更新越卡顿”、“某次重启后黑屏”、“WiFi 突然消失”的恶性循环。
5.1 更新铁律:永远使用update_chromeos,绝不手动替换内核
Chrome OS 的 OTA 更新是原子性的。update_chromeos命令会下载一个 delta 补丁包(通常几十 MB),校验其 SHA256 签名,然后将新旧系统分区(A/B 分区)进行原子切换。整个过程在后台完成,不影响当前运行的系统。而手动下载新内核、替换/boot/vmlinuz,会直接破坏 Verified Boot 的签名链,导致下次启动必报红屏,且按空格也无法继续——因为签名校验发生在 bootstub.efi 加载内核之前,此时系统尚未进入 Linux 环境。
正确更新流程:
- 确保网络畅通(WiFi 或有线)。
- 打开 Crosh 终端(
Ctrl+Alt+T),输入shell。 - 执行
sudo update_chromeos。 - 等待提示 “Update successful. Reboot to apply.”。
- 执行
sudo reboot。
整个过程无需下载 ISO,无需重装,平均耗时 3-5 分钟。我维护的三台旧机,过去半年共完成 12 次更新,无一次失败。
5.2 故障铁律:黑屏/卡死时,第一时间Ctrl+Alt+Backspace强制重载窗口管理器
Chrome OS 的图形栈(Ash)有时会因显卡驱动小 bug 卡死,表现为屏幕冻结、鼠标无响应,但键盘灯仍亮、风扇仍在转。此时不要长按电源键硬关机——这会损坏 A/B 分区的原子性,导致下次启动进入恢复模式(Recovery Mode)。
正确做法:按住Ctrl+Alt+Backspace(注意是 Backspace 键,不是 Delete)。这个组合键会向 Ash 窗口管理器发送 SIGTERM 信号,强制其重启。几秒钟后,桌面会刷新,所有应用窗口关闭,但系统本身(包括网络连接、后台服务)完全不受影响。这是 Chrome OS 原生设计的“软重启”机制,比 Windows 的Ctrl+Alt+Del更底层、更安全。
5.3 备份铁律:只备份/home/chronos/user,绝不备份整个系统分区
Chrome OS 的数据存储模型是“云中心化”。所有用户文档、书签、扩展程序设置,都通过 Google 账户实时同步。本地/home/chronos/user目录只存放临时缓存、下载的文件、以及离线使用的文档。因此,真正的备份只需两步:
确保 Google 账户已登录并开启同步:在
chrome://settings/syncSetup中,确认 “Sync everything” 已开启,且 “Apps and extensions”、“Bookmarks”、“Passwords” 等关键项已勾选。本地重要文件单独备份:将
/home/chronos/user/Downloads和/home/chronos/user/MyFiles中的个人文件,定期复制到外部硬盘或云盘。执行命令:# 将 Downloads 目录打包压缩(假设外接硬盘挂载在 /mnt/removable) tar -czf /mnt/removable/downloads_backup_$(date +%Y%m%d).tar.gz /home/chronos/user/Downloads
试图用 Clonezilla 或 dd 全盘备份 Chrome OS 分区是徒劳的,因为 A/B 分区的 active flag 会随更新自动切换,备份的可能是 inactive 分区;且 Verified Boot 的签名密钥是设备唯一的,备份到另一台机器上无法启动。
这三条铁律,是我过去两年维护十余台 Brunch Chrome OS 旧机总结出的血泪经验。它们不是技术炫技,而是让“旧电脑再利用”从一次性的折腾,变成可持续、可信赖的长期生产力解决方案的核心保障。当你不再担心更新会搞垮系统,不再因黑屏而焦虑地长按电源键,不再为丢失一个文档而彻夜难眠时,你才真正拥有了 Chrome OS 的精髓——极简、可靠、专注。
我个人在实际使用中发现,最有效的维护习惯是:每周五下午花 5 分钟,执行一次sudo update_chromeos,然后喝杯咖啡等待重启。这五分钟,买回的是接下来七天的安心与流畅。旧电脑的价值,从来不在硬件参数的堆砌,而在于它能否成为你工作流中那个沉默、稳定、从不给你添麻烦的伙伴。当它做到了,那台尘封在角落的 ThinkPad,就不再是电子垃圾,而是一台被赋予了新生命的、真正的 Chromebook。