【kindle Fire】rootを取ってみる 10.2.6対応

スポンサーリンク

Kindle FireとKindle Fire HDをroot化してしまう

※1月30日追記

 Kindle Fireのバージョンアップデートに対応しました。
 1月24日にKindlr Fireのアップデートが行われ、私のKindle FireからSUやら、
 Google Playが排除されてしまいました。

 基本的に以前の方法で復旧できますが、LinuxからはKindleを認識することができなく
 なってしまいましたので、OSXでのRoot取得方法へと切り替えました。

 以前の方法をひと通りOSX仕様に変更しています。

購入した方が少ないからでしょうか?
Kindle Fire HDのroot化の記事は多く見るのですが、
Fireの記事がなかなか見つからず・・・。
海外では古いバージョンでのroot化情報はあるものの、
新しいバージョンでのroot化情報が見つからなかったのですが、
こちらで発見しました。

 ※1月7日追記 こちらの方法はHDでも可能でした。

スマフォのroot化などでも多くの情報を提供しているXDAです。
上のリンクの方法はMacで行う方法を紹介していますが、

ここではLinux Mint 14で行います。
検証していませんが、Ubuntuでもできるかともいます。

私の環境ではLinuxがadbが上手く動いてくれなくなりました。素直にOSXでの実施方法へ1月30日に変更しています。
※今回も、技術的な検証が目的で行なっております。違法行為を助長するものではありません。
また、作業によってはkindle fireが文鎮化(起動しない状態化)します。実施は自己責任のもとお願いたします。
手順
  1. Kindle Fireのセッティングをする
  2. 必要なファイルをダウンロードする
  3. Android SDKの設置
  4. PCからKindle Fireへ必要なファイル転送
  5. 必要なコマンドの実行
  6. Google Playなどのファイル転送
  7. 完了
以上のような流れになります。

※下記の灰色のバックはすべてコマンドです。途中、折り返しがついてるものは基本
 1行だと解釈してください。

1.Kindle Fireのセッティングを変更する


root化するためには、Kindle Fireのセッティングを変更する必要するがあります。
●画面右上の「その他」→「端末」→「アプリケーションのインストールを許可」をON。

「設定」→「開発者向けオプション」のUSBデバッグを、ON。

2.必要なファイルをダウンロードする


必要なファイルは以下のサイトページから、ダウンロードします。
こちら上記のXDAのページでも紹介されています。

ダウンロードするのは、Root_with_Restore_by_Bin4ry_v18です。
ダウンロードしたら、ドキュメントフォルダなど任意のフォルダに解凍しておきます。

これと合わせて、Google Playの導入が必要な場合は、下記のファイルも用意ください。

http://forum.xda-developers.com/showthread.php?p=35888202#post35888202

上記URLから、Google store APKとGoogle Service Frameworkをダウンロードします。リンク切れの場合は、Google store APKなどとして、Google先生に聞いてみてください。

3.Android ADKの設置

こちら、すでにSDKを導入されている方は必要ありません。
まだ導入されていないかたは、
Download the official Android IDE and developer tools to build apps for Android phones, tablets, wearables, TVs, and more.

こちらからSDKを取得してください。ダウンロードしたら解凍して、ドキュメントフォルダや
ホームフォルダにすべてのファイルを置いておけばOKです。

※以前はパスを通さずに運用していましたが、OSXではパスを通さないと
 かなりめんどくさいです。Android SDKを設置したら、adbファイルにパスを通してください。

パスの通し方は

Javascriptをメインに使っているプログラマーの技術ブログです。ちょっぴりアートでちょっぴりオモシロイものを作ってます。記事の内容はjQuery、jQueryMobile、HTML5、CSS3などなど…

こちらなど参考にしてAndroid SDKのファイル内にある

(解凍したファイル名) > pratform-tools > adb

こちらへパスを通します。

これ以降はSDKファイルをホームフォルダへAndroid_sdkというファイル名で設置し、
そこへパスを通しているという設定で説明します。

4.PCからKindle Fireへファイル転送(Google Playのファイルなど)

adb push ~/Documents/stuff/busybox /data/local/tmp/.
adb push ~/Documents/stuff/su /data/local/tmp/.
adb push ~/Documents/stuff/Superuser.apk /data/local/tmp/.
adb push ~/Documents/stuff/ric /data/local/tmp/ric

以上のコマンドでファイルを送っていきます。

さらにGoogle Play関連のファイルも転送します。若干パスが違いますのでご注意下さい。
別のターミナルをたちあげて作業するとやりやすいかもです。

adb push ~/Documents/playstore.apk /data/local/tmp/.
adb push ~/Documents/servicesframework.apk /data/local/tmp/.

※Google Play関連のファイル名は取得先によって違うことがあるので、仮のファイル名です。

5.必要なコマンドの実行

ファイルを転送したら、パーミションを変更しておきます。
Kindle Fire側に転送したファイルのパーミションを変更するので、
adb shellを起動します。

adb shell
ここで、adb shellが起動すると、shell@android:/という形でログインできます。

ログインできたら、パーミションを変更します。

chmod 755 /data/local/tmp/busybox

chmod 755 /data/local/tmp/playstore.apk

chmod 755 /data/local/tmp/servicesframework.apk

exit
exitすると、adb shellが終了します。

ここまで終了したら、別のターミナルを起動します。別のターミナル画面で、以下のコマンドを実行します。

adb shell "while ! ln -s /data/local.prop /data/data/com.android.settings/a/file99; do :; done" > /dev/null
このコマンドを実行しても、ターミナル画面には変化は起きません。次の手順へ行きます。
別のターミナルコマンドを起動して、再び手順4の通りディレクトリを移動します。移動したら、以下のコマンドを実行。
adb restore ~/Documents/stuff/fakebackup.ab
ここで、Kindle Fire側はレストア画面が表示されますので、レストアしてください。
ここまできたら、adbコマンドから再起動をかけます。
adb reboot
ここで再起動すると、Kindle Fireが再起動します。通常の再起動とは違って起動画面がちらつきます。起動しても、スリープ画面の画像が出て来ません。

真っ暗です。スリープ画面上でも起動画面のロゴがちらつきますが、問題ないです。この状況が確認できたら、再度adb shellを起動します。

adb shell
ここで成功しているならば、ログインがroot@android:/になっているはずです。

ここで、Google Playを導入するために必要なファイルを移動します。
この移動は、rootでログインしてる時にやってしまいます。

mount -o remount rw /system

cat /data/local/tmp/servicesframework.apk > /system/app/framework.apk

cat /data/local/tmp/playstore.apk > /system/app/play.apk
続いて、以下のコマンドを実行します。
/data/local/tmp/busybox mv /data/local/tmp/su /system/xbin/su

/data/local/tmp/busybox mv /data/local/tmp/ric /system/bin/ric

chmod 755 /system/bin/ric

/data/local/tmp/busybox mv /data/local/tmp/Superuser.apk /system/app/Superuser.apk

/data/local/tmp/busybox cp /data/local/tmp/busybox /system/xbin/busybox

chown 0.0 /system/xbin/su && chmod 06755 /system/xbin/su

chmod 655 /system/app/Superuser.apk

chmod 755 /system/xbin/busybox

rm /data/local/tmp/servicesframework.apk

rm /data/local/tmp/playstore.apk

rm /data/local.prop

reboot
以上、再起動が完了すると、今度は正常にKindke Fireが再起動します。さらに再起動後、アプリの中にSuperSUというアプリが登場するはずです。

起動すると、こういった感じです。

個人的な体験としては、このsuperSUがインストールされていたものの、起動するとSUコマンドが無いから、エラーです。みたいな警告がでました。その場合は一旦、手順4のファイル転送からやり直すと、上手く行きました。

その他上手く行かない場合は、一旦手順4のファイルの転送へ戻ってみてください。

XDAのほうでも同じような対処法を行うように説明されています。

また、以上の手順はページ上部で紹介したXDAのサイトを参考に実施しています。

途中Google Playのファイルも一緒にインストールしていますが、XDAでは別々に行なっています。上手く行かないか方は、英語ですがXDAのサイトを参照していただけると良いかと思います。

スポンサーリンク

シェアする

フォローする

スポンサーリンク