最近因为一些工作原因,需要经常携带电脑,主要用 Office 套件做一些文字工作。这才意识到,我实在是没有一个可以让我方便携带的轻薄本,于是我前去闲鱼,收了一台 Chromebook —— 正好我一直想买一台 ChromeOS 的电脑来玩玩。于是,挑选许久,决定下了这台 Pixelbook Go 2019 (Atlas)

Pixelbook Go 2019 Atlas
Pixelbook Go 2019 Atlas

不得不说,这台机器的外观是真好看,咕果的审美果然是在线的。触控板的阻尼感十分舒适,剪刀角的键盘码字手感也不赖。屏幕是可以触控的,而且立体声扬声器也意外地还不错。感觉不论是放在当年还是现在去看,这台 Chromebook 的综合素质都十分优秀。

我这台的配置是 CPU: i5-8200Y,内存 16 GB,以及 eMMC 硬盘 128 GB。虽说是超绝无敌低压 CPU,以及超绝 eMMC 硬盘,其实对于码字工作绰绰有余。而且实际使用下来,我爱折腾让它跑的一些程序也基本上能够如期运行,所以确实很足够了。就是不知道为什么机器工作的时候总是常有轻微的异响,网上搜了搜,好像是通病。好在不是很明显,倒也无妨了。

配置信息
配置信息

其实到手前,我是准备先玩两天原生的 ChromeOS,然后就刷成别的系统的。结果实际使用下来发现 ChromeOS 足够了,原生的 Chrome 浏览器,自带 Android 虚拟机,以及 Linux 容器,如果想用点 Windows 程序再通过 Linux 套一层 Wine 转译即可。(超级无敌套娃环节) 所以,我选择留在了 ChromeOS。而且我这一台外观也是十分地新,这也客观导致我有点想保留他的原系统,不太想给它大动手术了 (

虽然但是,自带的 Chrome 浏览器还是有点小缺陷的。比如不少功能居然找不到对应的入口,亏你还是 ChromeOS 里的 Chrome 浏览器呢。希望日后系统更新能够逐渐修复吧。

简要介绍完毕,那么,接下来就是我的折腾过程了。

首次配置

我这台到手的时候,卖家是 Powerwash (指 ChromeOS 自带的完全重置) 过一遍机器的,但是同时也是解除过 OS 验证,开启过开发者模式的。所以这一步我就开箱即用了。不过为了教程完整,我姑且还是查阅了一下如何开启 Developer Mode,毕竟说不定日后还要用到。

开发者模式建议一开始就打开,毕竟这一功能是要完全重置系统才能开启的。日后程序都装完,想要再开启就很麻烦了。而且想要安装第三方 Android 应用是一定要打开开发者模式的。

开启开发者模式

关机状态下,按下 Esc 键 + ⟳刷新键 (F2 或 F3) + 电源键 ,进入恢复模式

开启完毕后,第一次启动的欢迎页面上应该出现了“开启开发者模式”的选项。记得点击打开,电脑会自动重启。

配置 ChromeOS

这时我们可以连接到可以访问 Google 的网络,按照提示配置 ChromeOS 了。

打开了开发者模式之后,每次开机都会有一个强制的 30 秒白屏警告,提示系统完整性验证功能已关闭,并在即将结束警告画面进入系统时会以大音量蜂鸣警报两声。如果想临时跳过,每次启动时都要按下 Ctrl + D 从磁盘启动。而且在这时若是一不小心按下了空格键选择了重新开启,就一夜回到解放前了。实属有点恼人。如果想跳过这一画面,我们还需要对 BIOS 进行一些设置。

修改主板固件设置

如果想对 Chromebook 进行更改主板设置,首先需要解锁电脑的硬件写入保护。通常来说有两种方法:一是使用官方的 SuzyQable 调试线;官方的线材比较贵且不是特别好买,虽说也有开源的自制方案,而且还有万能的购物网站,但是做一根或者专门去买一根还是有一点点麻烦。二是拔除笔记本的电池连接,使得安全芯片暂时停止工作,从而进入解锁写保护的模式。这种方案就是小折腾一点,但是完全不需要线材,而且正好还能拆开看看内部构造,所以我选择了后者的方案。

拆解主机

其实拆起来也不是很麻烦,将背部螺丝全部拆除,打开后盖即可。我这台 Pixelbook Go 底部共有 10 颗螺丝,两条胶条下各有 4 颗,拆开之后也没有卡扣,轻轻地取下来即可。

Pixelbook Go 背板 D面
Pixelbook Go 背板 D面

取的时候注意, Pixelbook Go 的电池是安装在后盖上的,因此电池排线连接着后盖和主板。而且主板一侧还有上了螺丝的排线接口保护盖,需要用螺丝先拆除。拆下来之后直接轻轻向上提即可轻松取下。万万不要没有拆开就直接大力出奇迹了 (

建议从转轴处轻轻抬起,然后从另一侧打开,再进行拆卸螺丝的操作,比较顺手。

打开背板 可以看到电池排线
打开背板 可以看到电池排线

拔除电池之后,我们这时先把电脑反转过来,然后直接接上电源使用。因为只有在电池断开连接的情况下才能进入调试状态

进入终端

因为我的 ChromeOS 已经更新到了最新版本,所以通过按下 Ctrl + Alt + F2 来进入全屏的 Developer Mode 终端界面 (VT2)。只在通过按下 Ctrl + Alt + T 桌面环境下的 Crosh 终端操作是无效的,必须通过 VT2 终端才能操作这些指令。

登录用户,账户名为 chronos ,密码是你第一次启动设置过的 root 密码。

如果你初次启动将密码留空,那么直接登录大概是无效的 (因为我就是)。所以此时我们先输入 root ,登录 root 用户,默认密码为 test0000 ,然后根据屏幕上的提示,输入 chromeos-setdevpasswd 来配置 chronos 的密码。设置完成后,root 用户将会失效。日后如果需要执行 root 用户的命令,在终端登录 chronos 用户之后,输入 sudo -i 即可。

这里有两种方法可以对固件进行操作。一个是使用 MrChromebox 的脚本,优点在于操作稍微安全简单些,但是局限性在于只能设置每次开机提示系统未验证的提示时长与蜂鸣警告。而自行对 gbb_flags 直接动手,则不仅可以设置警告页面,还可以强制打开开发者模式,免得误触空格时重新打开了系统验证,从而掉了开发者模式。所以,下列方法根据需求二选一

MrChromebox 脚本设置

内容可能有时效性。
参阅:MrChromebox 官方文档 - https://docs.mrchromebox.tech/docs/fwscript.html

进入 VT2 终端并登入后,执行:


    cd; curl -LOfk https://mrchromebox.tech/firmware-util.sh && sudo bash firmware-util.sh

注意 -LOfk 这里:其中一个参数是英文字母 O 而并非数字零;还有参数 k 是可选项,旨在联网下载脚本时跳过 SSL 证书验证。

由于这一步是在全屏状态下执行的,所以我们大概是要手动输入一遍命令。

(不过我发现一种似乎可以偷懒的办法,先在桌面环境下的 Crosh 终端内粘贴,并敲回车执行执行一遍命令,再退出 Crosh,然后再进入 VT2 终端后按↑键执行历史记录的命令行。此方法仅供参考)

下载完毕,此时会自动弹出 MrChromebox 的脚本页面。

gbb_flags 设置

这里有一个直观的 gbb_flags 参数参考网站可以用。
参见 - https://binbashbanana.github.io/gbbflaginator/

gbb_flags 的原理,是通过修改十六进制标记位来对固件进行参数配置。

下列命令根据情况自行选择添加 `sudo` 。

如果你比较好奇现在是什么设置,可以执行如下命令来查看:


    futility gbb -g --flash --flags

注意查看的参数是 -g 获取 (get),而设置的参数是 -s 设置 (set)。手敲的时候务必不要输错。

配置的话,通常我们执行如下命令即可:


    futility gbb -s --flash --flags=0x19

这个命令里包含了 缩短开机警告强制开启开发者模式 (不会受空格误触锁回)、以及允许从 USB 启动。这三个比较实用。

此时我们设置完毕,可以重启一下机器验证功能是否启用,然后就可以关机装回电池,上好螺丝了。

姑且留一张主板内部图。注意红圈处电池接口的位置,操作完毕组装回去把排线按紧,保护小盖子的拐弯记得从缺口处对齐插入,再上好螺丝。

主板内部
主板内部

软件设置

上面折腾了半天,终于把各种硬件设置配置好了。这些工作基本是一劳永逸的,所以基本上也就到此为止了。

对于日常使用,肯定还是要对程序进行配置的。这篇文章主要留存一下硬件相关的设置。如果你感兴趣,下一篇文章会列出来一些我常用的软件和相关设置,可以酌情考虑查看。
Chromebook 程序配置日志
https://wk239.com/articles/chromebook-software-setup-log.html