[Xperia]自前でkernelをrepackする

Android OS

最近、Advanced Stock Kernelを見ないなぁと思ったら、みんな自前で作っていたんですね。
re-xda-title

kernelのrepackツール

XDAをフラフラと覗いていたら、こんなツールがあったんですね。

何をしてくれるのか、解説を読むと

  • DM Verityを無効化
    簡単に言うと、/systemパーティションに改変があると起動しませんよ機能
  • SONY RICを無効化
    /system以下にアクセするとすぐに再起動してあげます機能
  • TWRPをインストール
  • SupserSUをインストールしてroot化
  • DRM機能復活のファイルをインストール

自前でkernelをビルドできない自分にとっては、最高のツールです。

RICだのDM Verityのことについて詳しくは

をご覧ください。

必要なもの

いろいろと下準備が必要ですが、bootloaderをアンロックするような人にはデフォルトの環境かと思います。

  • rootkernel_v4.31_Windows_Linux.zip
    前述のサイトからダウンロードできます。
  • Flashtool
    ftfファイルしかない場合は、Flashtoolがあると便利です。
  • Xperia Firm
    Flashtoolがなくても、Xperia Firmを使ってファイルをダウンロードすることができます。
  • SuperSU.zip
    XDAにありますので、ダウンロードします。
    stableと書かれた安定版「2.65」を使用したところ、LMT Launcherがうまく動作しなかったので、「LATEST」版である「BETA-SuperSU-v2.71-20160331103524.zip」を使いました。

環境

  • Xubuntu 16.04

で実行しています。
adbやfastbootコマンドが使えるようにしておきます。

ftfファイルからkernel.sinを抜き出す

今回は、Xperia Z5 Compact E5823、32.1.A.1.185のftfファイルを使ってみました。

ftfファイルは実質、zipファイルですので、解凍するなりして、「kernel.sin」を抜き出します。
re-kernel-sin

kernel.sinをkernel.elfにする

Flashtoolを起動して、Tools->sin editorを起動。
ファイルを指定して、Extract Dataをクリックするだけ。
re-sin-editor

rootkernel_v4.31_Windows_Linux.zipを解凍

解凍したら場合によっては、実行権限を与えないとダメかもしれません。

$ chmod +x *

雑過ぎw

このフォルダ内に、「kernel.elf」と「BETA-SuperSU-v2.71-20160331103524.zip」を入れる。
「BETA-SuperSU-v2.71-20160331103524.zip」の方は、「SuperSU-v.2.7.zip」と名前を変える。

では、repack実行

実行方法は、

rootkernel.sh [kernel.elfのファイル名] [repack後のファイル名.img]

で指定します。

$ sudo bash ./rootkernel.sh kernel.elf adv_stock_kernel.img
- Unpacking kernel
 Found elf boot image
 Kernel version: 3.10.84
 Found appended DTB
- Detected vendor: somc (Sony), device: suzuran (Z5C), variant: row
- Unpacking initramfs
- Detected platform: 64-bit
- Detected Android version: 6.0
- Disabling dm-verity
- Disabling SONY RIC
- Installing TWRP
- Found SuperSU-v2.71.zip
 Adding service entry for SuperSU
- Configuring keyprovd
- Configuring credmgrd
- Configuring secd
- Configuring wvkbd
- Configuring drmserver
- Creating new initramfs
- Creating boot image
- Cleaning up
Done

これだけで、TWRPとDRM Restoreが入って、RICもDM verityも無効になる!!

fastbootでさくっと焼くだけ

あとはfastbootコマンドでインストールするだけ。

$ fastboot devices
$ fastboot flash boot adv_stock_kernel.img

TWRPの起動はボリュームアップです。
ボリュームダウンでは起動しません。
Screenshot_2016-04-29-06-27-17

日本語も選択できますが、リソースがないのか、日本語は表示されません。
Screenshot_2016-04-29-06-26-54

端末情報
Screenshot_20160505-191152

SuperSUも入ってます。
Screenshot_20160429-201630

本当は、ツールに頼ることなく、自分でkernelをビルドした方が勉強になるのだと思いますが、どうもやる気が起きません・・・

どうでもいいですが、Xperia X Performanceの発売日は6月下旬から7月ですか・・・
appleみたいに発表してすぐに売りだしちゃえばいいのに、といつも思います。

 

booleeをフォローする
BOOLEE STREET.net

コメント