在PC机上安装CloudReady体验Chrome OS

笔者之前一直都是用的三星 ARM Chromebook 体验 Chrome OS 这个轻量化的浏览器操作系统,最近看到 reddit 上有人用 CloudReady 在配置很普通的 PC 上安装的 Chrome OS 效果也是挺不错的,又想到准备做的 Chrome Nacl 开发还是需要 x86 的环境,因此就准备在我的宏碁 Iconia W700 Win10 平板上用 U 盘安装一个 Chrome OS 系统体验看看。

我的老宏碁 Iconia W700 平板基本配置为:

  • Intel Core i3-2375M 处理器;
  • 4GB 内存;
  • Intel HD Graphics 3000 集成显卡;
  • 平板默认分辨率 1920x1080;
  • 升级的 256GB SSD.

这款机器用来跑 Chrome OS 绝对是绰绰有余的,有些网友都是用配置比较烂的 Intel Atom CPU 上网本安装 CloudReady 系统的。

CloudReady相关介绍

CloudReady 是 Neverware 公司基于 Google 开源 Chromium OS 系统开发出的操作系统,可以提供基本类似 Google 在 Chromebook 等设备上的官方 Chrome OS 系统的功能,目前提供面向个人的免费版和面向教育结构的收费版本,两种版本的比较请参考 这里,个人版本主要少了技术支持服务之类的,建议直接到 Neverware官网 下载最新的个人版本。

我写这篇文章时 CloudReady 最新个人版本是 45.1.20 版本,虽然还跟不上 Google 官方已经推出的 Chrome OS 47.0 版本,但使用起来还是没什么大碍的哦。

另外目前网上也有一些网友自己编译的 Chromium OS 系统提供下载安装,CloudReady 系统相对来说比较好的地方就是其主要方向在这方面,有一定的技术支持,使用时遇到什么问题也可以到其论坛上提问得到解答。

安装说明

将下载到的 zip 压缩文件解压缩会得到一个 5GB 左右的镜像文件,准备一个容量为 8GB 以上的 U 盘(如果你的电脑有 USB 3.0 接口的话那强烈建议使用 USB 3.0 U 盘,会明显提升 CloudReady 系统速度),使用镜像写入工具直接将解压缩出来的镜像文件写入 U 盘即可(Windows 上可以使用 Win32 Disk Imager 之类的工具,Linux 等系统上可以直接使用 dd 命令写入)。

写入完成之后重启电脑,并将电脑设置为从 USB 启动,这样就可以直接引导并体验 CloudReady 系统了,系统主界面如下:

可以看到 CloudReady 系统界面和 Chrome OS 基本没有任何区别,启动完成之后可以在右下角菜单中选择 “Install CloudReady…” 将 CloudReady 系统直接安装到硬盘。

注意

由于 CloudReady 系统暂时还不支持多系统启动功能,通过 Install CloudReady 功能将 CloudReady 系统安装到硬盘会直接擦除掉硬盘的原有数据,如果需要保留硬盘上的原有系统请注意谨慎操作。

不过我可没有打算把我的平板上的 Win10 系统直接擦除掉用 CloudReady Chrome OS 系统,还是准备直接用 USB 3.0 U 盘体验 Chrome OS,这样也比较方便。

我安装 CloudReady 系统时使用的是 16GB 的 U 盘,但启动起来之类才发现 CloudReady 默认留给 home 用户的空间差不多就 1GB(U 盘多余的空间并没有利用到),对于我这种安装了很多 Chrome 插件和 App 的人来说,开机激活并自动同步所有软件和 Chrome 配置之后就已经开始报空间不足了,所以这里强烈建议在第一次启动之间直接按照下面的步骤先扩容 home 用户空间方便使用。

Chrome OS 的 home 用户空间是专门存放登录用户的配置文件、历史记录、浏览的缓存数据、安装的扩展和 App 等私人数据的单独分区,Chrome OS 上默认唯一可写的专用下载目录也在此空间中,home 用户空间大小可以在 Chrome OS 自带的 文件 App 中查看到。

U 盘用户空间扩容

这一步由于需要直接扩容 U 盘分区,所以最好在 Linux 系统(也可以使用安装了 crouton 的 Chromebook)下操作,在任何一个普通 Linux 系统下插入 U 盘,使用 parted 命令的 p 打印命令可以看到安装了 CloudReady 系统的 U 盘(设备名为:/dev/sda)分区布局如下:

(trusty)root@localhost:/home/zzm# parted
GNU Parted 2.3
使用 /dev/sda
欢迎使用 GNU Parted! 输入 'help'可获得命令列表.
(parted) p
Model: Teclast CoolFlash USB3.0 (scsi)
磁盘 /dev/sda: 15.7GB
Sector size (logical/physical): 512B/512B
分区表:gpt

数字  开始:  End     大小    文件系统  Name        标志
11    32.8kB  8421kB  8389kB            RWFW
 6    8421kB  8422kB  512B              KERN-C
 7    8422kB  8422kB  512B              ROOT-C
 9    8422kB  8423kB  512B              reserved
10    8423kB  8423kB  512B              reserved
 2    10.5MB  27.3MB  16.8MB            KERN-A
 4    27.3MB  44.0MB  16.8MB            KERN-B
 8    44.0MB  1118MB  1074MB  ext4      OEM         msftdata
12    1185MB  1202MB  16.8MB  fat16     EFI-SYSTEM  启动
 5    1202MB  1204MB  2097kB            ROOT-B
 3    1204MB  4387MB  3183MB  ext2      ROOT-A
 1    4387MB  5461MB  1074MB  ext4      STATE       msftdata

从上面的结果我们可以看到用户空间正是 U 盘上序号为 1 的分区(文件系统类型为:ext4,实际对应设备为:/dev/sda1),只不过刚好在分区表上是最后一个,不过其实这也是非常好的地方,这样我们可以直接对序号为 1 的分区进行扩容而不影响其它分区。

下面使用 parted 的 resizepart 命令对序号为 1 的分区进行扩容并验证:

提示

老版本的 parted 并不支持 resizepart 命令,如果你在 parted 中运行 resizepart 提示不支持的话那就需要升级 parted 软件包了。

(parted) resizepart 1 -1
(parted) p
Model: Teclast CoolFlash USB3.0 (scsi)
磁盘 /dev/sda: 15.7GB
Sector size (logical/physical): 512B/512B
分区表:gpt

数字  开始:  End     大小    文件系统  Name        标志
11    32.8kB  8421kB  8389kB            RWFW
 6    8421kB  8422kB  512B              KERN-C
 7    8422kB  8422kB  512B              ROOT-C
 9    8422kB  8423kB  512B              reserved
10    8423kB  8423kB  512B              reserved
 2    10.5MB  27.3MB  16.8MB            KERN-A
 4    27.3MB  44.0MB  16.8MB            KERN-B
 8    44.0MB  1118MB  1074MB  ext4      OEM         msftdata
12    1185MB  1202MB  16.8MB  fat16     EFI-SYSTEM  启动
 5    1202MB  1204MB  2097kB            ROOT-B
 3    1204MB  4387MB  3183MB  ext2      ROOT-A
 1    4387MB  15.7GB  11.3GB  ext4      STATE       msftdata

可以看到序号为 1 的分区已经扩容为 11.3GB 了,但实际底层的 ext4 文件系统还没有扩容,扩容 ext4 文件系统之前需要先用 e2fsck 命令检查文件系统:

(trusty)root@localhost:/home/zzm# e2fsck -f /dev/sda1
e2fsck 1.42.9 (4-Feb-2014)
第一步: 检查inode,块,和大小
第二步: 检查目录结构
第3步: 检查目录连接性
Pass 4: Checking reference counts
第5步: 检查簇概要信息
STATE: 30211/65536 files (0.3% non-contiguous), 228239/262144 blocks

完成之后再使用 resize2fs 命令扩展 U 盘上序号为 1 的分区的文件系统:

(trusty)root@localhost:/home/zzm# resize2fs /dev/sda1
resize2fs 1.42.9 (4-Feb-2014)
Resizing the filesystem on /dev/sda1 to 2755852 (4k) blocks.
The filesystem on /dev/sda1 is now 2755852 blocks long.

没什么意外的话 resize2fs 操作将能很快完成,此时 U 盘上 home 用户空间的扩容也就完成了,可以重启用 U 盘引导计算机进入 CloudReady 系统了。

安装 Flash 插件

CloudReady 系统在第一次激活启动的时候就会提示你安装 Adobe Flash 插件,如果你身在墙外或者全程 VPN 的话点击继续应该可以直接安装成功。

如果启动时提示安装 Adobe Flash 插件时安装失败(被墙阻挡是国内用户安装失败的主要原因,因为 Flash 插件需要从 Google 网站上下载 Chrome Linux 安装包),也可以进入系统之后在 Shell 环境下手工安装。

CloudReady 安装 Flash 插件的脚本在 /opt/neverware/check_or_install_flash.py 路径下,查看其中的代码可以发现其从这个网址下载 Chrome Linux 安装包并自动解压缩出 Flash 插件文件安装到当前系统 /opt/google/chrome/pepper 中:

https://dl-ssl.google.com/linux/direct/google-chrome-stable_current_i386.deb

我们可以在浏览器中手工下载该文件,并修改 check_or_install_flash.py 文件中的 deb_path 为实际下载到的文件的路径,例如:

deb_path = "/home/chronos/user/Downloads/google-chrome-stable_current_i386.deb"

提示

CloudReady 系统下 home 用户路径为 /home/chronos/user,这一点和 Chrome OS 有点不一样(Chrome OS 路径中会附加随机生成的用户 ID),/home/chronos/user/Downloads 即为用户下载目录路径。

之后再到 Shell 终端中手工运行 check_or_install_flash.py 应该就可以正确安装了,完成之后最好重启下系统使 Flash 插件生效。

使用体验

经过一段时间的实际使用,我发现 CloudReady 还是基本达到了其宣称的类似 Chromebook 体验的,系统界面看起来和 Google 官方 Chrome OS 基本没什么区别,在一般的 PC 机上使用起来也挺流畅的,使用 Google 账户登录之后原先在 Chromebook 或者 PC 端 Chrome 浏览器上使用的所有书签、历史记录、插件和 App 都可以自动同步过来,我之前发布的 Chrome OS 下的 快盘文件系统 App 使用起来也没什么问题。

下面总结一下我个人认为的 CloudReady 系统目前的优劣之处:

优点:

  • 无缝支持 Google 账户并同步;
  • 支持 Android Runtime,可以运行一些 Android App;
  • 新版本增加了 Netflix 等相关支持;
  • 免费个人版本直接支持 mp3、mp4(H264)硬件解码;
  • 支持单独安装 Adobe Flash 插件;
  • 相对完善的社区支持.

缺点:

  • Evernote(印象笔记)等需要 Chrome OS 的 App 无法运行(提示与设备不兼容);
  • 底层仍然是 32 位 x86 Linux 系统,最大只能使用 4GB 内存;
  • CloudReady 不支持直接的在线更新.

当然实际使用感受还是见仁见智的,欢迎各位安装 CloudReady 系统进行测试咯,文章中有任何问题欢迎提出指正,祝玩的开心~~~