Edited at

chromebookにcroutonでubuntuをいれる

More than 3 years have passed since last update.

Acer C720/2が届いた。

メインメモリ4GBで、SSDストレージ16GB。

ubuntuと同居させるには、ストレージが物足りないが、それはUSB3.0のメモリを挿しておくことでなんとかなる。

ということで、ubuntuを動かすまでにやったこと。


動作モード

chromebookには、3つの動作モードがある。


  • 通常動作


    • ふつうに電源をいれて、エンドユーザとしてchromeの制約下で使うモード。



  • レスキューモード


    • chrome OSの復元や、他のOSを起動するときのモード。



  • デベロッパーモード


    • デベロッパーモードでchrome OSを起動すると、terminalのcroshでshellコマンドが使える。shellと入れると、bashを使うことができる。




その他機能


  • OS確認機能

chrome OS以外のOSを使うことができるようにする。


  • BIOSでのブートデバイスの選択機能

USBやSDカードを挿入時、そのデバイスからOSを起動することができる。


各設定および機能の有効化方法


レスキューモードでchromebookを起動する


  • 電源OFF状態からesc+reload(F3相当の位置)+電源を長押し。


デベロッパーモードの有効化+OS確認機能の無効化


  • レスキューモードで起動すると、OSが見つかりません、という旨の画面がでるので、そこでctrl+dを押す。


    • OS確認機能をOFFにするにはEnterキーを押してください、と出るので、Enterキーを押す。




BIOSの有効化


  • デベロッパーモードでログインする

  • wifiの設定をする

  • ログイン画面でログインをせず、ctrl+Alt+ →(F2相当)でterminalを出す。

  • loginプロンプトで、chronosでログイン


  • sudo bashでrootになる。

  • 以下コマンドを実行

    crossystem dev_boot_usb=1 dev_boot_legacy=1


  • 上記の1を0にすると、もとに戻る。


  • CLI画面からGUIのログイン画面に戻るのは、alt+←(F1)



日常的なスプラッシュ画面での操作

上記、デバイスの有効化とBIOSの有効化をしてあれば、電源OFFにする状態から通常の電源ON直後、スプラッシュ画面がでる。



  • ctrl+dでデベロッパーモードになる。


  • cltrl+lでSeaBIOSによるOS選択画面になる。

BIOSの有効化は、下記操作では必ずしも必要ではありません。その場合、ctrl+lは使えません。


chrome OSのリカバリ

OSをいろいろいじるには、工場出荷状態に戻る方法を確立しておく必要がある。


リカバリーメディアの作成

リカバリーメディアの作成方法は3つ。

内蔵SSDのリカバリ領域から復元することもできるが、外部USBにリカバリメディアを作っておくと、SSD内リカバリ領域が壊れた時でも安心。(通常、書き込み制限がかかっているらしいので、めったに壊れない)



  • chrome://imageburnerを開いて、USBメディアを挿して作成。(僕の場合、ダウンロードがうまくいかなかった)

  • chrome webストアからchromebook復元ユーティリティをダウンロードしインストール。


    • リカバリーイメージのダウンロード15分

    • USB書き込み10分くらい



  • Linux/OSXマシンを使って作成



    • recovery.shを実行し、ダウンロードして、USBを挿して作成。使っているモデル名を検索する必要がある。C720の場合、Pettyで検索。



以下、備忘。


  • リカバリディスクをchromebook上でダウンロードするとき、diskスペースが足りないと、ダウンロードと解凍が失敗する。ダウンロードに600MB、展開時2GBくらい?

  • C720のイメージURLはここ


リカバリ方法

googleのこちらにあるとおり。以下の3つの方法がある。



  • リカバリーメディアを使った初期化方法


    • リカバリーモードで起動。(電源OFF状態からesc+reload(F3相当の位置)+電源を長押し。

    • リカバリーメディアを挿す。




  • 内蔵リカバリーメディアを使った初期化方法


    • 通常ログインしたchromeの詳細設定画面からPowerWashを選択



  • リセット方法は、ログイン画面でCtrl+Alt+Shift+r



ubuntuとの併用

現在、ubuntuと併用する方法は、こちらのブログによると以下の3つがある。

方式としては、大きく2つに分類できそうだ。


  • 内蔵ディスクをパーティション分割し、マルチブートする方法。


    • chrubuntu

    • BodhiLinux



  • chroot環境で起動する


    • croutonを使う



chrubuntuは、16GBのディスクを分割するとサイズ的に厳しく、またアンインストールするにもパーティションを戻さなくてはいけないのでやめる。(リカバリーすれば戻る)

chrome OSのファイルシステム上で比較的自由になりそうな、croutonでいれてみる。(/usr/local/chroots/領域をUSBに持っていくとかを将来検討)

2014-12-30追記:こちらの記事でUSBにインストールする手順を公開しました。


croutonをインストール


  1. デベロッパーモードで起動して、ログイン。

  2. Chromeで、https://goo.gl/fd3zcにアクセスし、croutonスクリプトファイル
    をDownloadディレクトリに保存する。(絶対パスでは/home/chronos/user/Downloads)

  3. terminalからshellを起動

  4. 以下のコマンドでダウンロードおよびインストールを開始。(一時間以上かかる)

$ sudo sh -e ~/Downloads/crouton -r trusty -t xfce,keyboard,audio,extension,chrome -e


  1. 最後にubuntuユーザのIDとPWを求められるので、入力してインストール終了。

  2. インストールが終わったら、sudo startxfceで、X-windowおよびxfce4がchromeとは別アプリとして起動する。


TIPS


  • 末尾の-eをつけると、chroot配下を暗号化するかどうかを選択。

  • -r オプションは、ディストリビューションを選択する。何が選べるはは、以下のコマンドで調べられる。

$ sudo sh crouton -r list

Downloading latest crouton installer... ######################################################################## 100.0%
Recognized debian releases:
potato* woody* sarge* etch* lenny* squeeze* wheezy jessie sid
Recognized kali releases:
kali
Recognized ubuntu releases:
warty* hoary* breezy* dapper* edgy* feisty* gutsy* hardy* intrepid* jaunty*
karmic* lucid* maverick* natty* oneiric* precise quantal* raring* saucy*
trusty utopic*
Releases marked with * are unsupported, but may work with some effort.


  • -t はwindow managerやパッケージを選択する。同じく、-t listで調べられる。

  • 再度インストールを実行したいときは、/usr/local/chroots/trustyをディレクトリごと削除する。(-uをつけないと、ディレクトリが存在するということで、インストールが開始しない)

  • もしくは、-uをつけることで、updateインストール。前回エラー中断したところから再開できる。

  • 推測だが、何度もインストールを短時間で繰り返していたら、以下のエラーが出るようになった。ubuntu側で単位時間あたりのセッションが多過ぎて、なにかの上限値にひっかかってしまったのだろうか。

E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/libj/libjpeg8-empty/libjpeg8_8c-2ubuntu8_amd64.deb  Connection failed [IP: 91.189.91.23 80]


画面遷移


画面とキーの対応


  1. chrome OSのGUI画面
    ctrl+alt+←(F1)

  2. chrome OSのCLI console画面
    ctrl+alt+→(F2)

  3. chroot(crouton)で動作している X window画面
    ctrl+alt+reload(F3)


TIPS


  • 1.chrome OS GUI画面からは、2.chrome OS console画面にしか行けない。

  • 2.chrome OS console画面からは、1にも3にも行ける。

  • 3.X window画面からは、1にも2にも行ける。

  • ctrlとaltは、一度画面を切り替えたら、キーを離さないと認識しない。押しっぱなしは認識しない。


おまけ


キーボードショートカット

なにはともあれ、操作を覚える。


  • ヘルプの表示 Ctrl+Alt+/


コマンド

通常のセットアップをして、Ctrl+Alt+tでterminal画面(crosh)を起動すると以下の様なコマンドが使える。


  • ping

  • ssh

  • top

  • tracepath

  • network_diag

通常helphelp_advancedがある。

多少、help_advancedのほうがいろいろできるが、実用的なほどではない。