ざっくりとした手順
既存ROMの削除→StockROM書き込み→CWMからOTA適用→Stock RecoveryからOTA適用
という流れで作業していきます。ROMは自炊したものか有志公開のものを使いましょう。
StockROMの焼き直し
#system領域を消去する。
fastboot erase system -w
******** Did you mean to fastboot format this partition?
Creating filesystem with parameters:
Size: 14539534336
Block size: 4096
Blocks per group: 32768
Inodes per group: 8144
Inode size: 256
Journal blocks: 32768
Label:
Blocks: 3549691
Block groups: 109
Reserved block group size: 871
Created filesystem with 11/887696 inodes and 97200/3549691 blocks
Creating filesystem with parameters:
Size: 452984832
Block size: 4096
Blocks per group: 32768
Inodes per group: 6912
Inode size: 256
Journal blocks: 1728
Label:
Blocks: 110592
Block groups: 4
Reserved block group size: 31
Created filesystem with 11/27648 inodes and 3566/110592 blocks
erasing 'system'...
OKAY [ 0.041s]
erasing 'userdata'...
OKAY [ 0.558s]
sending 'userdata' (137559 KB)...
OKAY [ 15.545s]
writing 'userdata'...
OKAY [ 10.929s]
erasing 'cache'...
OKAY [ 0.023s]
sending 'cache' (8832 KB)...
OKAY [ 1.007s]
writing 'cache'...
OKAY [ 2.066s]
finished. total time: 30.198s
# boot領域を削除する。
fastboot erase boot
erasing 'boot'...
OKAY [ 0.025s]
finished. total time: 0.028s
ITL41D
(4.0.1)のROMを書き込む
# system領域の書き込み
fastboot flash system system.img
erasing 'system'...
OKAY [ 0.015s]
sending 'system' (321835 KB)...
OKAY [ 35.979s]
writing 'system'...
OKAY [ 20.241s]
finished. total time: 56.245s
# boot領域の書き込み
fastboot flash boot boot.img
sending 'boot' (8192 KB)...
OKAY [ 0.936s]
writing 'boot'...
OKAY [ 0.736s]
finished. total time: 1.678s
# recovery領域の書き込み
fastboot flash recovery recovery.img
sending 'recovery' (4386 KB)...
OKAY [ 0.517s]
writing 'recovery'...
OKAY [ 0.473s]
finished. total time: 0.995s
# radio領域の書き込み
fastboot flash radio radio.img
sending 'radio' (12288 KB)...
OKAY [ 1.401s]
writing 'radio'...
OKAY [ 2.047s]
finished. total time: 3.455s
# bootloaderを書き込み
fastboot flash bootloader bootloader.img
sending 'bootloader' (2308 KB)...
OKAY [ 0.266s]
writing 'bootloader'...
OKAY [ 0.439s]
finished. total time: 0.712s
Stock ROMの書き込みが終わったらCWM
を起動させる
fastboot boot recovery-clockwork-5.5.0.2-maguro.img
downloading 'boot.img'...
OKAY [ 0.595s]
booting...
OKAY [ 0.330s]
finished. total time: 0.932s
メニューからfactry reset
を実行。再起動すると4.0.1に戻ってます。
続いて設定からOTAファイルをダウンロードします。このOTAファイルは署名上の問題でそのまま適用することができませんので、/cache 以下に保存されているOTAファイルを取出して手直しをします。
adb pull /cache/94ec403ff247ca27ed0565b827ea9701e31a1f79.zip
\META-INF\com\google\android\
以下、updater-script
の先頭4行を削除し、7zip等を使用して書庫に追加します。
assert(file_getprop("/system/build.prop", "ro.build.fingerprint") == "samsung/yakjusc/maguro:4.0.1/ITL41D/SC04DOMKKD:user/release-keys" ||
file_getprop("/system/build.prop", "ro.build.fingerprint") == "samsung/yakjusc/maguro:4.0.2/ICL53F/SC04DOMLA1:user/release-keys");
assert(getprop("ro.product.device") == "maguro" ||
getprop("ro.build.product") == "maguro");
手直しができたら編集済OTAファイルを/sdcard へ配置し、CWMを起動します。
#CWMをbootする。
adb reboot bootloader
fastboot boot recovery-clockwork-5.5.0.2-maguro.img
downloading 'boot.img'...
OKAY [ 0.598s]
booting...
OKAY [ 0.331s]
finished. total time: 0.940s
CWM
が起動したらOTAファイルを、install zip from sdcard
からインストール。
再起動後に端末単体で、なおかつStock RecoceryでOTAが当たるようになっていればOKです。
仕上げにbootloader
をLocked
に戻せば作業完了です。
fastboot oem lock
...
OKAY [ 0.201s]
finished. total time: 0.206s
考察
・ITL41D
(4.0.1)のROMを焼き直すだけだと、次回のOTA(ICL53F
)が当たらないっぽい。
標準リカバリが署名回りでなんかエラー吐いてるので、対策としてCWM
からinstall
する。
ICL53F
アプデ後のOTAが正常に当たっていけば、公式な状態に戻ってます。
・radio領域のバックアップは/dev/block/platform
以下を探すといいかもしれない。
CWM起動時にadb接続すればroot権限であれこれできます。
・CWMの代わりにTWRPを使ったら上手いこといきませんでした。てへぺろ