以前、CuBox-iのAndroid4.4の kernelの変更無しで(公式Android) root権限が必要なアプリを動作させることが確認できました。このAndroid4.4は、公式と言ってもデフォルトで使われているものでも、Ignitionからのインストールできるものとも違っています。ここが一番気をつけなければいけない点となります。対象となるバイナリは下記のものとなります。この版のポイントは、デフォルト版のものではramdisk.imgがバックアップとなるのに対して、CWMのリカバリーを追加しているということです。Androidスマホなどで詳しい方ならばCWMと聞いただけで、このあとの作業がすべて想像できると思いますが、ここで紹介するのはリカバリーシステムを使ってSuperSUをインストールする方法です。
1.対象となるAndroidのイメージ
https://server.vijge.net/static/cubox/android/ から
android-4.4.2-1.0.1c-ga-aaf118bb78-gapps.img
をダウンロードしてきて、SDを作成します。SDの作成方法は以下が役にたちます。
本コラムの「CuBox-i/HummingBoardのSDカードの作り方」http://goo.gl/V9B3zE
CuBox-iにSDを挿入し、通常に立ち上がることを確認します。
2.SuperSUをrecoveryを使ってインストールします
http://download.chainfire.eu/696/SuperSU/UPDATE-SuperSU-v2.46.zip
をダウンロードしてきます。
recoveryは、下に記述の手順で行います。(ここは一般的なリカバリーの説明)
[Recovery]--------
Androidでは外部にリカバリーイメージというものがあります。このリカバリーはClockWork Mod (CWM)に基づいています。リカバリーを使ってAndroidのバックアップやりストアをしたり、ドライブのフォーマットやパッケージの追加などが行われます。
SD card を CuBox-i本体から取り出してPCに挿入します。
“boot partition” がマウントされたことを確認
uEnv.txt をtext editorで編集します
"ramdisk.img" を "cwm.img" とします
(注)text editorでは、Notepad++などを使い、Linuxの行末(LF)にします
Windowsデフォルトの(CR+LF)を使うとイメージがブートしなくなります
SD card をアンマウントして安全にとりだします
------------------
通常のリカバリーではCuBox-i にSDをもどしてbootし直しますが、その前にさらに、ダウンロードしたUPDATE-SuperSU-v2.46.zipをSDに書き込みます。それからCuBox-iに挿入し直して起動してリカバリーメニューを立ち上げます。
基本的な手順としては、zipファイルのあるフォルダをマウントしてからメニューのTOPへ戻り、
「install zip」→ 「choose zip from /sdcard」と進み、先のUPDATE-SuperSU-v2.46.zip を選びます。
今回のCuBox-iによる検証では、ファイルの置き場所が適切でないのか、どのマウントを試してもどうしても見えてきませんでした。試行錯誤の結果、USBメモリにzipファイルを置き、メニューのUSBのマウントをしてようやく見えるようにしました。見えればもうあとは選択してzipインストールを完了させるのみです。
3.SDをCuBox-iから外して、再度、uEnv.txt の "cwm.img" を "ramdisk.img" と戻します
通常のAndroidが立ち上がった所でSuperSUがインストールされていることを確認します。
4.AndroidのGooglePlayからRoot Checkをダウンロード
してちゃんとroot が取得されていることを確認してみます。access granted になっていれば成功です。