« Raspberry Pi 2にプロテクターなど | トップページ | 64bit OSでapptoutをビルドする »

2015/03/12

ChromebookのChrome OSウインドウでubuntuやDebianを動かす

Screenshot_20150314_at_220742

「Chrome OSウィンドウ内でLinuxが動く」というは気になっていて、ChromebookはHP(ちょっと古くてArmで遅いけど見た目いい)かacerか(acer前モデルc720は高速でみんな楽しくハック対象機種)と検討していたところ、amazonタイムセールacer Chromebook CB3-111の2GB版が安売りしていました。重量1.1kg弱の最新ノートPCで2万円台なら十分遊べると、ポチります。翌朝、数時間でセール品は売り切れになっていましたけれど、その後販売価格が下がってきて、また買いやすくなっているようです。

当日配達されすぐに使い出します。実のところ、Chromebookは開発者モードでハックしなくても、十二分に実用品だと気付かされました。あれ、ブラウザしか動かないOSでGoogle縛りでそんなに軽量でなく価格も安くない、だからゴミだと思っていたのに、すげーいいです。PCは別に持っている前提で、Chromebookは、高速ノーメンテで使いやすいヤツでした。
ちなみに日本語キーボードモデルだったので、確かに右端あたりは変則で気持ち悪いです。タイプミスにはならないのですぐに気にならなくなりました。むしろ、CtrlはAの横に標準で設定できるのが助かりました。
Chrome16


スペックは低めのはずなのに、chromeが高速でビュンビュン動く感じが心地良いです。毎月第二水曜日以降、WindowsUpdateを終わらせなければいけないような気がかりは皆無です。画面も普通に見やすく、notoフォントですけれど読みやすいです。
Chromebookを買ったら、GoogleDriveが100GB 2年間タダでついてきました。DropboxとOnedriveは使ってるけど、Google DriveなんてGoogleアプリのデータの置き場所くらいしか利用していませんでしたけれど、Chromebookの標準ファイラーでは、ローカルストレージの「ダウンロード」に入れたものをひょいと隣のツリーのGooge Driveに入れればいいだけなので、ローカルドライブと同等の使い勝手です。

気軽に日用できる道具、です。
宿泊出張等の外出時に持ち出すのは、もちろんlet's note RZ4がいいですし、日帰りならWindowsタブレットもいいでしょう。高速安定な無線LAN環境が確保されていれば、Chromebookはめっちゃ使えるヤツです。しばらく放置していたからと言ってUpdateが数十個というような悩みはありません。

でも、せっかくだからLinuxの他のディストリビューションを入れてみようと思います。Chrome OSが使えるヤツだと気づいたので、Chrome OSウインドウ内でdebianかubuntuを動かして、vimとか使えれば十分じゃないかと思います。
既に去年から日本語の情報もあるようですし、日経Linux3月号に大橋 源一郎さんの記事も出ているらしいです。

「デベロッパーモード」というのがあるらしいです。がちがちセキュアなChromebookだと思っていたのに、これはなんだろうと思ったら、The Chromium ProjectsのDeveloper Modeページに詳細な説明がありました。なるほどー。ひっかかっていた疑問が氷解しました。Google Chrome OS デバイスは、「セキュア」かつ「オープン」でなければならない、という二つの要件をよく検討してデザインされたものでした。

デベロッパーモードにすることで、たとえばubuntuや、オープンソースのChromium OSを自分で好きなようにカスタマイズして、Chromebookに入れることができます。でも一般ユーザー(と開発者)の安全のため、モード変更には5分かかり、ユーザー設定データは全消去され、デベロッパーモードでの起動時には必ず警告画面が出て、CTRL+Dを押さないと20秒後にbeep音が鳴り響きます。

Chrome01

デベロッパーモードとブートの概要については、Chrome OS Verified Boot (presented by one of the Chrome OS engineers at the University of Utah, Feb 2012.)がとっつきやすかったです。

実際に各boot modeで操作するには、Verified Boot Presentationがboot modesやcrossystemの説明がまとまっていて読みやすかったです。

さて、実際にやってみます。
事前に、リカバリメディアを作成しておきます。4GBのSDが余っていたのでそれを使いました。
Chromeウェブストアから純正ツールのChromebook リカバリ ユーティリティを入れて、SDかUSBメモリでリカバリメディア作成しておきます。機種を指定して作成するので、正常動作中に作っておくのが自動で選択できて一番楽です。ぼくは後で使うことになりました。

まずはリカバリーモードで起動します。ESC と F3(Refresh)キーを押しながら電源オンです。
Chrome17

英語で表示されるので、左矢印で日本語を選べます。右で進めると沢山の言語で表示されて、面白いです。
Chrome03

ここでCTRL+Dを押し、ENTERを打てば、デベロッパーモードに移行開始します。5分間待たされて、ユーザーデータと設定が消去され、再起動します。
Chrome02

さあ、これでGoogleやメーカーのサポートには頼れずに、自分でなんとかすればいい世界に入れたわけです。
Chrome04

デベロッパーモードのChrome OS上で、最初から設定です。と言っても、言語と無線LAN接続設定して、gmailアカウントでログインするだけですけれど。

あれ、じゃあChromebookの通常の初期設定と一緒のようです。デベロッパーモードと言っても、この時点ではまだ環境に手を入れていないので、整合性確認された一般モードと同じように動きます。
ちなみに、デベロッパーモードでリカバリをすると、この時点の環境に戻ります。~/Downloadsは消去されているので、やり直しです。デベロッパーモードのままでリカバリもできるわけです。リカバリしても、デベロッパーモードのままなので、サポートなしで自分でなんとかする世界です。スペースバーを叩いて一般モードに戻っていく道もありますけれど、例によって5分待たされ、全消去されてやり直し、ブラウザのみに閉じた世界に逆戻りではあります。

croutonです。
後でもいいけれど、まず、crouton integration extensionを追加しておきます。Chrome OS上でLinuxの他ディストリビューションをウインドウで使うために必要な拡張機能となります。Chromeウェブストアで検索してもでてこないので、リンクをたどって入れます。

https://goo.gl/fd3zcからcroutonをダウンロードします。もちろん、普通にダウンロードフォルダに保存されるわけです。

croutonはchroot環境を簡単に構築するためのスクリプトです。まずcroshターミナル画面をCtrl+Alt+Tで出し、
shell
と入力してroot権限可能なchronosシェルを起動します。ここが一般モードとデベロッパーモードで違います。一般モードでは同様に操作しても、root権限可能なシェルを使えないわけです。

$ sh ~/Downloads/crouton
croutonのオプションは色々あるようです。
Chrome06

Chrome07

$ sh ~/Downloads/crouton -r list
croutonで入れられるディストリビューションの一覧です。ubuntu, debian, kaliのようです。
Chrome08


$ sh ~/Downloads/crouton -t help
オプションでデスクトップ環境等を選べるようです。
Chrome09

Chrome10

Chrome11

まずは定番のxfce4です。
$ sudo sh ~/Downloads/crouton -t xiwi,xfce -r trusty
風呂に入ったらとっくにインストールが終わっていました。ユーザー名とパスワードを入れて完了です。
Chrome12

$ sudo startxfce4
で、全画面で起動し、ウインドウ表示にします。
おお、動いた。とりえあえずsudo apt-get updateとsudo apt-get upgradeを無意識にします。
Chrome13

しかしxfceってどうなのかな、ubuntuだったらunityかな。
chrootのtrustyフォルダ(/usr/local/chroots/trusty)を削除し、やり直します。

$ sudo sh ~/Downloads/crouton -t xiwi,unity,keyboard -r trusty
今度は時間がかかりました。
あー、ubuntuっぽいね。日本語環境も入れて、と。うーん。
unity慣れないなあ。
Chrome00

そもそもXとかいらないんじゃあ…。一式あると便利なのかなあ。

$ sudo su ~/Downloads/crouton -r wheezy -t xiwi,keyboard,audio,lxde-desktop
容量の一番少なくて一式あるのはこんなもんかな。debianで、lxdeにしてみよう。

Chrome15

$ sudo startlxde
ああ、これでいいや。
日本語化しなきゃ。
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install vim nkf lv
$ sudo apt-get install locales
$ sudo dpkg-reconfigure locales
$ sudo aptitude -y install task-japanese
$ sudo aptitude -y install task-japanese-desktop ibus-mozc
とかかな。ぼちぼち調べて試していこう。

vimでタイムスタンプ入れるのは、確か…。
Vimで現在日時を自動的に挿入する方法 - 結城浩のはてな日記
これこれこんな。

他のLinuxディストリビューション入れると、色々なノウハウをそのまま使わせてもらえばいいので、やっぱり助かります。

一方、Chrome OSで行く道もあります。この場合、ローカルで日常やっている作業をクラウドやインターネット上のサーバーで処理できるようにしていくことになり、これはこれで面白い道です。そちらはまた別のエントリにします。


|

« Raspberry Pi 2にプロテクターなど | トップページ | 64bit OSでapptoutをビルドする »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/69188/61263385

この記事へのトラックバック一覧です: ChromebookのChrome OSウインドウでubuntuやDebianを動かす:

« Raspberry Pi 2にプロテクターなど | トップページ | 64bit OSでapptoutをビルドする »