Google Cr-48 “Mario” Chrome 操作系统笔记本电脑
我很幸运地收到了一台 Google Cr-48 “Mario” Chrome 操作系统笔记本电脑进行测试。我的日常工作是 Monty Program(MariaDB 背后的公司)的技术文档撰写和系统管理员,因此我想解答关于这个精简版操作系统的两个主要问题是:
我可以用它来完成我的日常工作任务吗?
Chrome 操作系统运行在 Linux 内核之上,但是你能获得多少正常的 Linux 体验?
笔记本电脑本身做工精良且外观 привлекательный,但并不出众。键盘手感很好,布局也不错,只是上下箭头键太小了。电池续航非常出色——轻松成为我在笔记本电脑上体验过的最佳续航。
Chrome 操作系统本身并不令人惊讶,至少如果您熟悉 Chrome 网页浏览器的话。有一些额外的配置选项,例如设置触控板灵敏度和网络设置。但是,您可以进行的自定义量非常少。这种最小化的一个例子是用户帐户——至少在传统意义上,没有任何帐户。您实际上是以“chronos”用户身份运行,但您永远不会以该用户身份登录。相反,您使用您的 Google 帐户凭据登录。
当您首次登录时,Chrome 操作系统会查看您是否注册了 Chrome 浏览器同步服务,如果是,它会同步您选择同步的所有项目(书签、扩展程序等)。首次启动 Chrome 操作系统几分钟后,我最喜欢的 Chrome 扩展程序已自动下载并安装,并且我的所有书签都已导入。我必须配置这些扩展程序,但这样做并没有花费太多时间。
我的桌面 Chrome 环境几乎毫不费力地复制了,所以现在是时候开始查看内部,看看我能找到什么了。而且,我发现的是……不多。除了浏览器之外,Chrome 操作系统真的没有什么东西。好吧,还有一件事。默认情况下,Cr-48 配备了 crosh,Chrome 操作系统 shell。您可以使用 Ctrl-Alt-t 组合键访问此 shell。
Crosh 非常有限,但这是设计使然。它并非旨在作为完整的命令行界面。它只允许您运行某些特定的命令。您可以使用以下命令获取命令列表:help命令。完整列表以及每个命令的说明只有一屏文本。有 ping、SSH、traceroute 命令、route、top、几个用于管理企业 SSL 证书的命令、一些网络诊断和日志记录命令,仅此而已。其中一些命令对我来说是陌生的,但 help 命令的输出对其进行了充分详细的解释。我猜测 crosh 控制台界面主要存在是为了向支持技术人员或帮助台提供通过电话或亲自对您的 Chrome 操作系统设备进行故障排除的能力。
这些命令对于日常工作来说不是很有用。即使是我通常觉得非常方便的 SSH 命令也不是。首先,它不是 OpenSSH。它更像是一个包装脚本,适用于那些不知道如何使用 SSH 并且懒得花五分钟学习的人。例如,当使用这个精简的 crosh SSH 时,您无法输入ssh me@example.com。相反,您需要使用ssh me example.com。也没有办法使用 SSH 密钥。有趣的是,OpenSSH 已安装在 Chrome 操作系统上,但要使用它,您需要进入“开发者”模式。
切换到开发者模式会关闭硬件验证系统,该系统会阻止运行修改后的固件。要进入开发者模式,您需要卸下电池并滑动隐藏在胶带下的小开关。使用物理开关的原因是因为无论如何您都无法阻止物理攻击,因此您不妨使运行修改后的软件需要物理访问——至少这样可以阻止远程攻击(显然无法远程滑动物理开关)。有关该过程的完整说明,包括照片,请访问 www.chromium.org。
首次以开发者模式启动时,笔记本电脑会将自身重置为出厂设置并显示警告。在 Chrome 操作系统中,这意味着您需要设置您的网络连接,并且您需要再次下载并安装您的扩展程序。除了这两件事之外,笔记本电脑上没有存储任何其他内容,因此这是一个简单的过程,尤其因为扩展程序部分在后台自动发生。
在开发者模式下,每次启动时都会出现警告屏幕。这更多的是一种烦恼,而不是其他。只需按 Ctrl-d 即可消除它并继续启动过程。这种烦恼的好处是,您不可能不知道您的 Chrome 操作系统设备处于开发者模式。
开发者模式向 crosh 添加了一个新的“shell”命令。此命令启动一个 bash shell——GNU bash,版本 4.0.35(2)-release,供那些关注版本号的人参考。但是,仅仅因为您有一个 bash shell 并不意味着您拥有完整的命令行环境。首先,虽然安装了一些程序,但没有 vi/vim/ed/nano/pico 或其他命令行文本编辑器。因此,Chrome 操作系统具有这种奇怪的命令行环境,您可以使用more来查看文件的内容;wc来计算文件中的字符数、行数和单词数;甚至md5sum来生成哈希值;但您实际上无法编辑该文件。他们当时在想什么?
这是一个反问句。答案是“云”。在云世界中,当没有网络连接时,为什么要启用编辑文件?你为什么要这样做?我的答案是因为云并非随时随地都可靠可用,而且因为,该死的,我喜欢在 vim 中本地编辑文件。我非常喜欢它,我甚至在 Chrome 中使用了一个扩展程序,允许我使用 vim 编辑 Web 表单中的文本区域(这对于长篇知识库文章非常方便)。
在我家,互联网连接几乎是理所当然的,在城镇周围也是如此(大部分时间)。但是,在旅行时,这就像一场赌博。这取决于我在哪里(有时取决于时间)。Cr-48 中的 Verizon 蜂窝无线电在美国提供了不错的覆盖范围,但在欧洲和世界其他地区连接则通过 Wi-Fi 或完全没有。大多数时候,拥有一个需要互联网连接的笔记本电脑是可以接受的,但有时则不然。例如,在飞机上使用 Cr-48 时,我应该甚至打开它吗?如果飞机上有 Wi-Fi 并且有某种东西证明成本是合理的,那当然可以;否则,不行。我最好把它放在托运行李中。
Cr-48 当然只是一个原型设备。当几种不同的 Chrome 操作系统设备在市场上销售时,您将能够选择一款为您所在地区和旅行习惯提供最可靠的始终可用的连接的设备。对始终可用的互联网连接的依赖是一个致命弱点,但最终将被修复或最小化。好消息是,当我有连接时,我实际上能够仅使用浏览器和 SSH 完成我的大部分日常工作。
能够仅靠浏览器和终端生存,当然,并非对每个人都适用。我碰巧将我的工作日花在写作(博客、wiki 和知识库条目、电子邮件和 IRC 大部分时间)、编辑其他人写的东西以及维护一小群服务器上。因此,一个好的文本编辑器和 SSH 是对我来说最重要的两件事,其次是好的 IRC 和电子邮件客户端。
当我之前说没有包含文本编辑器时,我只是部分准确。Google 并没有完全让您束手无策。默认安装的 Chrome 操作系统“应用程序”之一是一个名为 Scratchpad 的简单富文本编辑器。Scratchpad 在 Cr-48 上本地保存所有文本的副本,并与 Google Docs 同步。在 Google Docs 中,同步的文档会显示在名为 Scratchpad 的文件夹中。您放置在该文件夹中的任何现有文本文档也会在您下次同步时显示在 Scratchpad 中。正如可能预期的那样,非文本文档(电子表格、演示文稿等)不受 Scratchpad 支持,即使您将它们放在该文件夹中也不会显示。
我使用 Scratchpad 的唯一问题是它不是一个好的编辑器。它比使用 Google Docs 更快捷、更方便,但作为文本编辑器,它仅仅是过得去——远不如真正的文本编辑器高效或有用。公平地说,效率方面的权衡部分被普遍性弥补了。知道文档始终只需在世界任何地方的任何体面的网页浏览器中点击一下即可访问,这很不错。
在文本编辑之后,我做的下一个最大的事情是 IRC 和电子邮件——这两件事我都无法在 Chrome 操作系统上本地完成。是的,Gmail 在那里并且运行良好(以及所有其他基于 Web 的电子邮件站点),但我的工作电子邮件没有 Web 前端。希望开发人员正在为 Chrome 操作系统开发一个可靠的 IMAP 客户端。好的 IRC 客户端也是如此。谢天谢地,Mutt 和 Irssi 通过 SSH 连接可以完美使用(vim 也是如此),因为没有它们,我甚至无法考虑全职使用 Chrome 操作系统。远程运行它们的缺点是,当我连接到的网络速度慢或不可靠时,很快就会变得难以完成任何事情。最后,即使在开发者模式下,我可以使用 OpenSSH(SSH 密钥万岁!),但体验不如使用“真正的”Linux 命令行时那么好。
目前,获取 vim 或任何其他默认情况下未包含的本机应用程序的唯一方法是编译您自己的 Chrome 操作系统版本和/或您自己的软件包。对于开发人员来说,这很好,但我不是开发人员。对我来说,如果有一种简单的软件包管理器就好了,即使它只包含有限选择的预先批准的本机应用程序。
除了缺少常见的 Linux 应用程序之外,Chrome 操作系统非常稳定,硬件和软件协同工作良好。睡眠、恢复、网络摄像头等等都运行良好。也就是说,我确实能够让 Chrome 操作系统在某些嵌入了 Adobe Flash 内容的页面上以及在玩我从 Chrome 网上应用店安装的游戏时崩溃,或者至少暂时冻结(我不确定该游戏是否使用了 Flash 或它是否是 HTML5 Web 应用程序)。在大多数这些情况下,操作系统能够在几分钟后无需我的帮助即可恢复(无需重启),但有一次它不会或无法恢复,我被迫按住电源按钮强制重启。值得庆幸的是,启动 Chrome 操作系统非常快——在我的测试中,从打开盖子到登录后加载第一个标签页大约需要 20 秒。是的,Cr-48 在您打开它时启动——这是一个不错的功能。
另一个不错的功能是搜索键,或者我称之为“新标签页键”。此键取代了 Caps Lock 键(如果您愿意,可以在系统偏好设置中将其配置为 Caps Lock 键)。按下它会打开一个新标签页,光标位于 Chrome 搜索/地址栏中,因此您可以按下它并立即开始输入您的搜索内容或您想要访问的 URI。通常应该是功能键的键也被分配给了特定的浏览器和系统相关操作,例如前进、后退、重新加载、全屏、音量、屏幕亮度等等。整个体验非常完善,而且应该如此。我的意思是,您实际上只运行一个应用程序,因此如果硬件没有针对它进行调整,那才令人惊讶。
那么,您在 Chrome 操作系统中获得了多少 Linux?除了 SSH 之外,不多。当然,Linux 在幕后发挥着重要作用,但所有方式都是普通用户无法访问的。包含了一些命令行应用程序,但不足以认为 Chrome 操作系统命令行有用。相比之下,Ben NanoNote 的命令行(我在 2010 年 10 月号的 LJ 中评测过)更有用,即使它没有网络连接。除非您是开发人员,否则自定义 Chrome 操作系统不会超出书签、扩展程序和浏览器主题等表面事物。
无论是否表面,事实仍然是,由于 SSH,我可以使用这台笔记本电脑执行我的大部分工作相关任务——大部分,但不是全部。而且,即使对于我可以执行的许多任务,除非它们是我通常使用 Web 浏览器完成的任务,否则我无法像在我常用的基于 Ubuntu 的 Linux 系统上那样轻松地完成它们。这部分与我的长期习惯有关,部分原因是好的专用应用程序通常比基于 Web 的替代品更好(例如,基于 Web 的图像编辑器与 The GIMP 相比)。
举个例子,我经常使用 ClusterSSH 同时登录到我们的大部分服务器以执行维护。Cr-48 的屏幕尺寸理论上足够大,可以同时打开并显示六个或更多 SSH 窗口,但这在 Chrome 操作系统上根本不可能,除非您是开发人员并编译 ClusterSSH(如果甚至有可能这样做)或从头开始编写一个类似的替代解决方案。我仍然可以升级所有六台需要升级的服务器,但我必须登录并分别升级它们。
最后,Chrome 操作系统是一个无需多余功能的仅浏览器操作系统。如果您真的可以或确实使用浏览器来完成您在计算机上所做的所有事情(甚至几乎所有事情),那么这是执行此操作的完美方式。没有任何配置问题,因为除了登录您的 Google 帐户之外,没有什么可配置的。没有任何维护问题,因为 Google 在后台为您处理这些问题,自动将您更新到最新版本的 Chrome 操作系统。没有任何数据丢失问题,因为它不存储任何未在其他地方存储或无法轻松重新安装的内容。我可以继续说下去,但没有什么其他可说的了。无论好坏,Chrome 操作系统仅包含足够的 Linux 来运行 Chrome 网页浏览器,仅此而已。
类似于几年前我将我的戴尔上网本送给女儿的情况,我不认为我会将这台笔记本电脑用作我的主要笔记本电脑。这不是因为键盘太小(我对戴尔上网本的主要抱怨)。Cr-48 上的键盘非常出色。而且,这也不是因为任何其他与硬件相关的原因(它是一款 привлекательный、做工精良的笔记本电脑),而是因为它无法完成我期望和需要的便携式计算机所能完成的某些事情。我可能会把它作为备用机器带去旅行,但我认为这台笔记本电脑最终会或多或少地属于我的妻子。她在台式电脑上所做的大部分事情都在 Web 浏览器中完成,或者可以轻松地在其中完成。对她来说,这是一款完美的笔记本电脑;它易于使用、稳定且安全。事实上,这是我拥有的为数不多的她一直借用的电子产品之一。Chrome 操作系统可能不适合所有人,但 Google 在这里有所作为。
资源
探索您的 Chrome 操作系统笔记本电脑:www.chromium.org/poking-around-your-chrome-os-device
Cr-48 Chrome 笔记本电脑开发者信息:www.chromium.org/chromium-os/developer-information-for-chrome-os-devices/cr-48-chrome-notebook-developer-information
虚拟摧毁 Chrome 操作系统笔记本电脑:www.google.com/chromeos/demolab
Daniel Bartholomew 在 Monty Program (montyprogram.com) 担任技术文档撰写和系统管理员。他与妻子和孩子住在北卡罗来纳州,经常可以在 Freenode IRC 上的 #linuxjournal 和 #maria 频道找到他。