由于你懂的原因,GSuite在国内几乎无法正常使用,Chromebook更是连激活都成为问题,本文教你如何用Chromebook的机器通过USB引导安装Linux(本文以GalliumOS)为例。
官网:https://galliumos.org/
“A fast and lightweight Linux distro for ChromeOS devices" 这是官方对于GalliumOS的一句话介绍。经过使用,个人觉得这句话还是靠谱的,对于不同机器的适配做得也很完善,语言支持也较为丰富。
问题来了,为什么要通过USB引导安装呢?为什么不能通过Github上开源的crouton安装各种发行版的Linux呢?很简单,当下载完crouton以后,输入-e -r -t的各种指令下载Linux发行版,最后快下载完的时候会有一些库或者资源的链接是在google服务器上的。由于google无法连接,所以安装无法进行下去。也就是说,crouton无法使用的时候,就需要通过其他方法来实现安装。这里用到的是USB。
在使用USB安装操作系统的时候,不像我们一般PC用的主板,大多数Chromebook的主板是没有BIOS的,也就是在开机的时候无法选择从内部硬盘读取还是从U盘读取。所以第一步就是在Chromebook上安装BIOS。
在关机情况下,按住ESC+Refresh(最上一排第四个键)不放,再按下电源键,然后放手,快速按下Ctrl+D,会出现警告提示:To turn OS verification OFF press Enter...,再按下Enter后等待Chromebook发出的警告音。然后出现提示:Your system is transitioning to Developer Mode. 然后再出现提示:Preparing system for Developer Mode. 等待10分钟左右进入系统。
登录 https://wiki.galliumos.org/Hardware_Compatibility
在GalliumOS Support by Model中查询Chromebook对应的CPU架构以及是否需要更新firmware或是否支持ChromeOS和Liunx双系统。如果支持GalliumOS,那么就到firmware支持情况表 https://wiki.galliumos.org/Firmware 中查看Chromebook支持的firmware。
在Chromebook中联网并按Alt+Ctrl+T打开终端(游客模式也可以)输入:shell
进入shell后输入cd,接着执行脚本:curl -LO https://mrchromebox.tech/firmware-util.sh && sudo bash firmware-util.sh,等待几分钟出现界面如下:
https://mrchromebox.tech/#fwscript 插图
RW_LEGACY不需要移除WRITE-PROTECT
BOOT_STUB需要移除WRITE-PROTECT
STOCK FIRMWARE FULL需要移除WRITE-PROTECT
当遇到需要移除write-protect写保护的时候,就需要根据不同机器进行拆机了。以Asus的C300为例,参考网友拆机:http://www.matws.org/c300/ 在主板中有写保护螺丝,写保护螺丝周围有一个白色小三角形的箭号。
http://www.matws.org/c300/ 写保护螺丝配图
用螺丝刀卸下写保护螺丝再执行firmware安装的脚本。
如果设备支持RW_LEGACY那么就支持双系统,然而ChromeOS除了特定版本支持Android Apps以外实用性不高。另在我安装RW_LEGACY的时候,可能由于一些你懂的原因所以download failed,没有选择安装双系统而是用BOOT_STUB将ChromeOS抹去。等待BOOT_STUB安装,过程中一直输入y进入下一步即可。
在 https://galliumos.org/download 中点击自己CPU架构对应的GalliumOS版本进行下载,并到 http://www.etcher.io/下载etcher来制作U盘启动盘。选择镜像文件,选择U盘,就可以进行制作。需要注意的是,Chromebook的主板及CPU许多都是定制版本,所以和普通PC不同的是支持的写入方式不同,所以用UltraISO选择过HDD、HDD+和ZIP的写入模式都无法读取,只能用官方推荐的etcher来进行写入。
安装好了firmware(这里为STUB_USB)后,再次重启Chromebook就已经无法进入ChromeOS了,取而代之的是SeaBIOS,在短暂的提示出现时间内按下ESC可以选择由硬盘启动或者是由USB启动了。最好在开机之前就插入制作好的USB启动盘,并且注意插入的口为USB2.0口。如果无法把握按ESC的时间,可以开机进入SeaBIOS后狂按ESC,进入选项菜单选择USB启动。
安装按照GalliumOS的安装提示一步步进行就可以,在安装过程中可以选择对安装盘进行加密,以后每次开机进入系统的安装盘前会要求输入密码。然后设置用户名和用户密码。等待安装程序走完就可以重启,重启过程中会提示用户将USB启动盘拔出。安装过程非常顺利和简单,不再赘述。
在Chromebook上安装Linux的过程难不在于安装本身,而在与前期准备较为繁琐许多概念需要理解,还有安装后使用环境的配置。
解决方法:在Linux应用菜单中输入keyboard,进入键盘设置,选择Application shortcut,点击添加。在command栏中输入:xmodmap -e 'keycode 133 = Caps_Lock',然后点击确定,在等待输入热键的时候按下查询键(Super_L),以后每次开机后只要按一下查询键Super_L,系统就自动在终端输入指令更改查询键的功能为大小写锁定的功能,每次开机第一次需要输入大写的字母时按两下Super_L就可以输入了。
在这里我还使用过脚本的方法:在/home/username目录下创建文本文件,在里面输入xmodmap -e 'keycode 133 = Caps_Lock',保存并退出文件,重命名该文本文件,改文件后缀为.sh文件。在终端中输入chmod 777 /home/username/xxx.sh 为该脚本赋予执行权限。然后在应用目录中搜索session and startup用过Linux的开机自启动软件设置开机执行脚本。失败。也试过通过/etc/rc.local的开机自启动来执行该脚本,也失败。但是脚本换成别的指令能够成功执行,具体原因还不知道。目前只能通过绑定按键功能到Super_L键的方法来实现。
解决方法:应用目录中搜索languages可以进入语言选项,并且可以添加支持语言。输入法推荐使用google拼音输入法,安装方法参考:https://blog.csdn.net/arackethis/article/details/42154029
首先在终端中添加仓库,输入:sudo add-apt-repository ppa:fcitx-team/nightly
更新目录:sudo apt-get update
安装输入法:sudo apt-get install fcitx fcitx-config-gtk fcitx-googlepinyin fcitx-table-all
安装完成重启后在应用目录搜索fcitx可以使用Ctrl+Space来切换输入法。
1.GalliumOS的英文wiki,官网:https://galliumos.org/
2.GalliumOS的下载地址:https://galliumos.org/download
3.GalliumOS的支持列表:https://wiki.galliumos.org/Hardware_Compatibility
4.GalliumOS firmware的支持列表:https://wiki.galliumos.org/Firmware
感谢GalliumOS的开发者和社区让GalliumOS run on ChromeOS devices成为可能
5.拆机及写保护螺丝示意(Asus C300为例):http://www.matws.org/c300/
6.通过chrx安装GalliumOS可参考知乎专栏的翻译教程:https://zhuanlan.zhihu.com/p/25149902