Crouton を使って ChromeBook に Xubuntu 環境を構築する

去年、2016年11月に Asus ChromeBook Flip C100PA-DB02 を購入した。

このあと、この ChromeBook に Xubuntu を導入したので、その記録を今更ながら記事にする。

目次

ChromeBook に Linux 環境を構築するには

ChromeBook に Linux 環境を構築するためのツールとして有名なのが、Crouton というツール。これは chroot によって ChromeOS と Linux OS を同居させるようなことが可能になるツール。chroot とは CHange ROOT の略。指定の子プロセスに対してルートディレクトリを変更するコマンドで、Linux OS が動作する環境を Chrome OS 環境とは別にルートと見せかけることで OS を共存させるようなイメージか。

ちなみに、Chromebrew というツールがあって、これを使うと ChromeOS のターミナルに各種 Linux コマンドを導入できるのだが、Asus ChromeBook Flip の場合は CPU がコレに対応していないとのことで、インストールできなかった。そこで、Linux 環境を別に作り、開発環境として利用しようというワケ。

今回は導入する Linux OS として Xubuntu を選んだ。特に理由はない。Ubuntu を入れることもできる。今回の一連の作業は以下の記事を参考に試行錯誤した結果なので、Ubuntu を入れてみたいという人は以下の記事やその他ググってみると良いだろう。ChromeBook に Linux OS を導入する記事は山程ある。

全体の流れ

  1. ChromeOS を開発者モードで起動する
  2. Crouton をダウンロードする
  3. Crosh から Bash を起動し、Crouton を使って Xubuntu をインストールする
  4. Xubuntu を起動し、日本語入力できるように設定する

こんな流れで説明しようかと。

1. ChromeOS を開発者モードで起動する

ChromeBook を開発環境として使おうとしているギークの皆さんなら購入時点から開発者モードにしていると思うが、今一度説明。といっても以前の記事の抜粋。

ChromeOS には「開発者モード」というものがあり、これを有効にするとターミナル環境をいじることができる。開発者モードに移行するとそれまでのローカルデータは全て消えるので、購入したら最初に開発者モードにしてから始めると良い。

手順は以下のとおり。解説しているサイトは沢山あるので、色々調べてみるべし。

  1. 一度パソコンの電源を落とし、Esc + F3 (Refresh キー) + 電源ボタンで起動する。
  2. Ctrl + D で開発者モードにする。
  3. スペースキーは押さずに、初期化が始まるまで待つ。
  4. 初期化が終わったら、次回以降、起動時は毎回 Ctrl + D を押す。

これで開発者モードになる。

2. Crouton をダウンロードする

次に Crouton をダウンロードする。以下の URL にアクセスするといきなりファイルの保存先を選択するダイアログが表示されるので、「ダウンロード」フォルダの直下に「crouton」というファイルをダウンロードして置いておく。

「これ何の URL?平気?」と気になった方、ご安心を。以下の Crouton 公式 GitHub リポジトリでもこの URL で最新版の Crouton がダウンロードできると記載されている。

以下は「ダウンロード」フォルダ直下に、拡張子なしの「crouton」ファイルが存在する前提で話をすすめる。パスでいうと「/Downloads/crouton」がある状態にしておくということだ。

3. Crosh から Bash を起動し、Crouton を使って Xubuntu をインストールする

Crosh と Bash の起動については前回の記事より抜粋。

Ctrl + Alt + T でターミナルを起動する。ここで起動するシェルは crosh と呼ばれる ChromeOS のシェルで、ココで

sh $ shell

と入力することで、Bash が起動する。

Bash が起動したら、以下のコマンドで Crouton を叩き、Xubuntu をインストールする。インストールには1時間近くかかるので気長に待とう。

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

インストール作業を待つ間に、オプションの詳細や、ハマったポイントを紹介する。

Crouton のオプション詳細

chronos@localhost / $ sudo sh ~/Downloads/crouton -r list

Downloading latest crouton installer...
######################################################################## 100.0%
Recognized debian releases:
    potato* woody* sarge* etch* lenny* squeeze* wheezy jessie stretch sid
Recognized kali releases:
    kali* sana* kali-rolling
Recognized ubuntu releases:
    warty* hoary* breezy* dapper* edgy* feisty* gutsy* hardy* intrepid* jaunty*
    karmic* lucid* maverick* natty* oneiric* precise quantal* raring* saucy*
    trusty utopic* vivid* wily* xenial* yakkety* zesty*
Releases marked with * are unsupported, but may work with some effort.
chronos@localhost / $ sudo sh ~/Downloads/crouton -t list

Available targets:
audio
        Support audio playback via Chromium OS's audio system.
        Requires: core
chrome
        Google Chrome browser, stable channel.
        Requires: x11
chrome-beta
        Google Chrome browser, beta channel.
        Requires: x11
chrome-dev
        Google Chrome browser, dev channel.
        Requires: x11
chromium
        Chromium browser. Uses the distro's version, which may be old.
        Requires: x11
cli-extra
        Basic CLI tools such as ssh.
        Requires: core
core
        Performs core system configuration. Most users would want this.
e17
        Installs the enlightenment desktop environment. (Approx. 50MB)
        Requires: gtk-extra
extension
        Clipboard synchronization and URL handling with Chromium OS.
        Requires: x11
gnome
        Installs the GNOME desktop environment. (Approx. 400MB)
        Requires: gtk-extra
gnome-desktop
        Installs GNOME along with common applications. (Approx. 1100MB)
        Requires: gnome
gtk-extra
        GTK-based tools including gdebi, gksu, and a simple browser.
        Requires: x11
kde
        Installs a minimal KDE desktop environment. (Approx. 600MB)
        Requires: x11
kde-desktop
        Installs KDE along with common applications. (Approx. 1000MB)
        Requires: kde
keyboard
        Adds support for Chromebook keyboard special keys.
        Requires: x11
lxde
        Installs the LXDE desktop environment. (Approx. 200MB)
        Requires: gtk-extra
lxde-desktop
        Installs LXDE along with common applications. (Approx. 800MB)
        Requires: lxde
touch
        Touchscreen and limited generic gesture support.
        Requires: x11
unity
        Installs the Unity desktop environment. (Approx. 700MB)
        Requires: gtk-extra
unity-desktop
        Installs Unity along with common applications. (Approx. 1100MB)
        Requires: unity
x11
        X11 via autodetected backend. Does not install any desktop environment.
xbmc
        Installs the XBMC media player. (Approx. 140MB)
        Requires: x11
xfce
        Installs the Xfce desktop environment. (Approx. 250MB)
        Requires: gtk-extra
xfce-desktop
        Installs Xfce along with common applications. (Approx. 1200MB)
        Requires: xfce
xiwi
        X.org X11 backend running unaccelerated in a Chromium OS window.
        Requires: audio extension
xorg
        X.Org X11 backend. Enables GPU acceleration on supported platforms.
        Requires: audio

sudo ができない?

sudo コマンドを打つとなぜかパスワードを聞かれてしまい、これまで何のパスワードも入れていなかったので何を入れたらいいのか分からない、という状態に陥った。

結局原因はよく分からないが、Powerwash して最初からやり直したらうまく行った。Powerwash はタスクバーから選択する「設定」ウィンドウから実行可能。一度完全に初期化するのでデータのバックアップは別途とっておくこと。自分はほぼ全てのデータを Google Drive に置いていたので影響ほぼなし。

なお、開発者モードにしないと Crosh で shell と打っても Bash に入れないので、開発者モードは必要。Powerwash 後、デバッグ機能を有効にして初期化処理すると sudo 時にパスワードを求められるようになるので、デバッグ機能は有効にしないで進める。うまくいくと sudo -s でパスワード設定とかなしにいきなり sudo できるようになるはずだ。

Linux 環境を捨てるには?

再度インストールを実行したいとか、Linux 環境やっぱイラネとなったときは、/usr/local/chroots/trusty/ ディレクトリを丸ごと削除すれば良い。

# これで Trusty の場合のインストール内容が削除できる。
$ cd /usr/local/chroots/
$ rm -rf trusty

4. Xubuntu を起動し、日本語入力できるように設定する

Xubuntu を起動するには、Crosh → Bash から以下のコマンドを打つ。

$ sudo startxfce4

これで Xubuntu が開いた。

次に、日本語表示を可能にするための設定を続けていく。Xubuntu 内のターミナルを開き、以下を入力。

$$ sudo apt-get install language-pack-ja
$$ sudo apt-get install ibus-mozc
$$ sudo update-locale LANG=ja_JP.UTF-8

1行目は日本語パックのインストール、2行目はMozcのインストール、3行目はlocaleに日本語を追加するコマンドになります。各コマンドの実行時にパスワードを求められたときは、インストール時に設定したパスワードを入力します。

コマンドでのインストールが終わったら、左上のスタートメニューから設定を選び、「Language Support」を選んで「Install」を押す。

インストールができたら一旦ログアウトして再度 sudo startxfce4 で再起動する。これで Xubuntu が日本語表示になる。

次にキーボードから日本語入力できるようにする

日本語入力のための ibus-daemon が起動時に立ち上がるようにする必要がある。「設定」→「セッションと起動」→「自動開始アプリケーション」で「追加」ボタンを押下し、以下のコマンドを入力する。

ibus-daemon -rdx

次に、ルート権限で /etc/profile に以下の環境変数を追加する。

$$ sudo mousepad /etc/profile

# Mousepad というのはテキストエディタ。
# これで /etc/profile が開くので、一番最後に次の4行を追加して保存する。

export GDM_LANG=ja
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus

で、一度ログアウトして再起動すると、日本語入力できるようになる。

英数字に直すには F10・音量上げるキーを押す。

これで環境設定は完了。

ChromeOS と Xubuntu の行き来の仕方

Ctrl + Alt + F1 (戻る) などと紹介している記事もあるのだけど、どうも ChromeBook Flip の場合は Shift キーも要るみたい。

全てのキーを押して、離すときに画面が切り替わる感じ。

ついでに Xubuntu のスクリーンショットを撮ってみた。

ファイルの保存場所として、Chrome OSのDownloadsフォルダが両環境で共有できます。

  • スクリーンショット : 「Applications Menu」→「Accesary」→「screen shot」

Xubuntu 開いた

ひとまずこんな感じで良いでしょう!

参考

以下の3つの記事がベースになっとります。

日本語化の試行錯誤中に以下のようなコマンドを Xubuntu 上で打ったりしたけど、多分効果なかったものと思慮。一応備忘として残しておく。

$$ sudo apt-get install fcitx fcitx-mozc fcitx-libs-qt5 fcitx-frontend-qt5

あ、あと全然関係ないけど、ChromeBook Flip における「Delete キー」の動作は、Alt + Backspace でできまする。意外と便利。