rootedなHTC Sensationに公式RUUやOTAを当てる手順です。
この方法では最終的にS-ONに戻りますので、Revolutionaryで再S-OFFするなりして下さい。
RUUとOTAはそれぞれ利点、欠点がありますので場合により使い分けて下さい。
・RUUを当てる場合
手順は簡単ですが、systemディレクトリが完全に工場出荷時に戻ります。
つまり、それまで行ってきた変更が全てやり直しになるということです。
挙動が怪しくなって来た場合等に有効です。
まず、superCIDを設定します。
「 HTC SensationにClockworkMod Recoveryを適用する手順 」を参考にしてfastbootが使える状態にし、Sensationをfastboot接続します。
そして、下記のコマンドを実行
fastboot oem writecid 11111111
fastboot reboot-bootloader
ここでbootloaderが再起動しますので下記のコマンドを実行。
fastboot getvar cid
Sensationから「 11111111 」の応答があれば成功です。
後は通常起動しここから取ってきた任意のRUUを当てます。
リージョンロックが外れていますので、多分どのRUUでも当てられるのではないかと思います。
RUUが終了した時点ではS-OFFのオフィシャルbootloaderが入った状態となります。
このままRevolutionaryが当てられるかどうかは試した事がないので分かりません。
S-ONに戻すには上記superCIDの設定をもう一度行い、fastbootから下記のコマンドを実行します。
fastboot oem writesecureflag 3
・OTAを当てる場合
今の状態を保ったままアップデートがかかります。
但し、過去のカスタマイズでアップデート対象リソースを入れ換えていた場合は作業が煩雑になります。
まずはSensationのソフトウェアアップデートを確認して、OTAパッケージをダウンロードします。
ダウンロードが完了すると、今すぐインストするか?と聞かれますので後程インストするを選びます。
この状態で一回バックアップを取っておいて下さい。
ダウンロードされたOTAパッケージが/sdcard/downloadに保存されていますので、PCにコピーしてきます。
OTAを解凍すると中にfirmware.zipがあると思うのでそれも解凍しrecovery.imgを取得します。
「 HTC SensationにClockworkMod Recoveryを適用する手順 」を参考にしてrecovery.imgを適用します。
発行するコマンドは
fastboot flash recovery recovery.img
これでリカバリー領域がオフィシャルリカバリーに戻りました。
後は「RUUを当てる場合」に記載してあるsuperCIDの設定を行っておきます。
Sensationを通常起動し、ステータスバーの通知からアップデートを開始します。
問題が無ければ数回再起動を繰り返した後、通常起動した状態に戻ります。
この状態ではRUUを適用した場合と同じでS-OFFのオフィシャルbootloaderが入っています。
fastbootから下記のコマンドでS-ONに戻ります。
fastboot oem writesecureflag 3
ここまですんなり終わればいいのですが、もしアップデート中にビックリマークが出てしまった場合はリソースの入れ替えが行われている場合です。
電源が落ちませんので電池はずしで切って下さい。この段階ではまだアップデートが走っていないので実行前と同じ状態です。
この後も頑張れば当てられる状態に持っていけますが、作業がかなり煩雑なので出来ればRUUを当てた所にOTAを当てる方法をおすすめします。
一応この後の手順も続けて記載しますが、それなりに知識のある人向けとさせてもらいます。
まず、入れ替えたリソースを自分で把握している場合です。
先程解凍したOTA内のMETA-INF\com\google\android\updater-scriptをテキストで開き
apply_patch_checkを行っているリソースで該当のものを探します。
見つかったら書き戻してアップデートを実行。
入れ替え時に上書きしてしまって物が無い場合については後記します。
次に、入れ替えたリソースを把握していない場合。
オフィシャルのリカバリーは画面出力も無いし、adb接続も出来ない様になっています。
もし可能であるならrecovery.imgをadb接続可能に修正しlogcatで突き止めるのが楽だと思います。
もしくはS-OFFされたSensationにオフィシャルOTAを当てたいを参考にしてClockworkMod RecoveryでOTAを実行し原因を突き止めてください。
続いて、上書いてしまったリソースの取得方法ですが
今使っているROMと同じバージョンのRUUを取得してきます。
エクスプローラーで「%TEMP%」を開き、出来るだけゴミを削除して綺麗にします。
RUUを実行します。%TEMP%直下にディレクトリが2つ出来ると思うのでその中からrom.zipを任意の場所にコピーします。
コピーが終わったらRUUは終了。rom.zipを解凍しsystem.imgを取得します。
ここからunyaffsを取得し「unyaffs.exe system.img」で展開されるので物を取得します。
何か後半が非常に分かりづらいですねw
PCが直ったら画像を追加しておきますが、余り改善されないかもしれない。
この方法では最終的にS-ONに戻りますので、Revolutionaryで再S-OFFするなりして下さい。
RUUとOTAはそれぞれ利点、欠点がありますので場合により使い分けて下さい。
・RUUを当てる場合
手順は簡単ですが、systemディレクトリが完全に工場出荷時に戻ります。
つまり、それまで行ってきた変更が全てやり直しになるということです。
挙動が怪しくなって来た場合等に有効です。
まず、superCIDを設定します。
「 HTC SensationにClockworkMod Recoveryを適用する手順 」を参考にしてfastbootが使える状態にし、Sensationをfastboot接続します。
そして、下記のコマンドを実行
fastboot oem writecid 11111111
fastboot reboot-bootloader
ここでbootloaderが再起動しますので下記のコマンドを実行。
fastboot getvar cid
Sensationから「 11111111 」の応答があれば成功です。
後は通常起動しここから取ってきた任意のRUUを当てます。
リージョンロックが外れていますので、多分どのRUUでも当てられるのではないかと思います。
RUUが終了した時点ではS-OFFのオフィシャルbootloaderが入った状態となります。
このままRevolutionaryが当てられるかどうかは試した事がないので分かりません。
S-ONに戻すには上記superCIDの設定をもう一度行い、fastbootから下記のコマンドを実行します。
fastboot oem writesecureflag 3
・OTAを当てる場合
今の状態を保ったままアップデートがかかります。
但し、過去のカスタマイズでアップデート対象リソースを入れ換えていた場合は作業が煩雑になります。
まずはSensationのソフトウェアアップデートを確認して、OTAパッケージをダウンロードします。
ダウンロードが完了すると、今すぐインストするか?と聞かれますので後程インストするを選びます。
この状態で一回バックアップを取っておいて下さい。
ダウンロードされたOTAパッケージが/sdcard/downloadに保存されていますので、PCにコピーしてきます。
OTAを解凍すると中にfirmware.zipがあると思うのでそれも解凍しrecovery.imgを取得します。
「 HTC SensationにClockworkMod Recoveryを適用する手順 」を参考にしてrecovery.imgを適用します。
発行するコマンドは
fastboot flash recovery recovery.img
これでリカバリー領域がオフィシャルリカバリーに戻りました。
後は「RUUを当てる場合」に記載してあるsuperCIDの設定を行っておきます。
Sensationを通常起動し、ステータスバーの通知からアップデートを開始します。
問題が無ければ数回再起動を繰り返した後、通常起動した状態に戻ります。
この状態ではRUUを適用した場合と同じでS-OFFのオフィシャルbootloaderが入っています。
fastbootから下記のコマンドでS-ONに戻ります。
fastboot oem writesecureflag 3
ここまですんなり終わればいいのですが、もしアップデート中にビックリマークが出てしまった場合はリソースの入れ替えが行われている場合です。
電源が落ちませんので電池はずしで切って下さい。この段階ではまだアップデートが走っていないので実行前と同じ状態です。
この後も頑張れば当てられる状態に持っていけますが、作業がかなり煩雑なので出来ればRUUを当てた所にOTAを当てる方法をおすすめします。
一応この後の手順も続けて記載しますが、それなりに知識のある人向けとさせてもらいます。
まず、入れ替えたリソースを自分で把握している場合です。
先程解凍したOTA内のMETA-INF\com\google\android\updater-scriptをテキストで開き
apply_patch_checkを行っているリソースで該当のものを探します。
見つかったら書き戻してアップデートを実行。
入れ替え時に上書きしてしまって物が無い場合については後記します。
次に、入れ替えたリソースを把握していない場合。
オフィシャルのリカバリーは画面出力も無いし、adb接続も出来ない様になっています。
もし可能であるならrecovery.imgをadb接続可能に修正しlogcatで突き止めるのが楽だと思います。
もしくはS-OFFされたSensationにオフィシャルOTAを当てたいを参考にしてClockworkMod RecoveryでOTAを実行し原因を突き止めてください。
続いて、上書いてしまったリソースの取得方法ですが
今使っているROMと同じバージョンのRUUを取得してきます。
エクスプローラーで「%TEMP%」を開き、出来るだけゴミを削除して綺麗にします。
RUUを実行します。%TEMP%直下にディレクトリが2つ出来ると思うのでその中からrom.zipを任意の場所にコピーします。
コピーが終わったらRUUは終了。rom.zipを解凍しsystem.imgを取得します。
ここからunyaffsを取得し「unyaffs.exe system.img」で展開されるので物を取得します。
何か後半が非常に分かりづらいですねw
PCが直ったら画像を追加しておきますが、余り改善されないかもしれない。
色々と、ありがとうございました。
Clockworkmod Recoveryを入れ直して下さい。
suも無効になります。当て直して下さい。
ここいら辺はOTA後の一連の作業です。
無事OTA当てて、Titanium Backup以外は問題なく使用しています。
そこで一つ疑問が出たのでお聞きしたいのですが・・
S-on戻さず、現状のS-off・オフィシャルリカバリ-状態から、ClockworkMod RecoveryとSUを当てたら、再Root化になるのでしょうか?その時、何か問題が出るのでしょうか?
端末にClockworkMod RecoveryとSUが入っていますので、上書きするのか、入れ直しをした方のが良いのかも判断が付かず、戻せなくなる前にお聞きしようと思いましたもので。
たびたび申し訳ありませんが、宜しくお願い致します。
WinRARを使い、無事解凍できました。
これで記事の手順通りにOTAを当ててみます。
お恥ずかしい質問で済みませんでした。
今後も、記事を参考にさせて頂きます。
ありがとうございました。
先頭に256バイトのextraヘッダーが付与されているようです。
ですので、使用するアーカイバによっては破損ファイルとみなされる事があります。
WinRARとZELDAでは問題無く解凍出来ました。
ひとつお聞きしたいのですが、OTAを当てる手順でfirmware.zipを解凍しようとすると、”このフォルダ-は無効であるかまたは壊れています”になり、recovery.imgの取り出し出来ないのですが、何か方法が有るのでしょうか?
ご教授頂ければ幸いです。
初期化の件はスクリプトを見てみないと何とも言えませんが
わざと初期化する内容のOTAもあると思います。
お陰様で何とかOTA適用が完了しました。
ありがとうございます。
ただ、OTAの手順を踏んだはずなのになぜか初期化されてしまったので、
再構築中ですが・・・
なにはともあれ、この記事がすごい役に立ったことは事実なので、
非常に感謝しています。
ありがとうございました。
Desireを治そうと思った時に感じたんですが
RUUが途中でぶった切れたりしても、そうそう起動不能には陥りません。
bootloderの書き換えがおかしくならない限りは大丈夫だと思います。
仰る通りS-OFFは維持されますね。
RUU後アップデートをすべて行い root 化しました。
これで心機一転。
新しい年を迎えることができます(笑)