攻撃は最大の防御なり

50代おやじの適当なブログです。

HTC SensationでCynogenMod

2011-08-18 14:40:44 | HTC Sensation
HTC Sensation用のCynogenMod 7.1.0 RC1のビルドを進めていましたが
昨夜のビルド分で見事起動に成功しました。





まだ取り敢えず起動したって段階だから、問題は山済みなんですけどね。
でも、立ち上がる様になった分問題も解決しやすいし何よりヤル気が出るのです。
ちょっと我慢すれば使えない事もないしね。

次はこいつに噛ませるカーネルを作ろうかな。

HTCユーザーの憂鬱

2011-08-18 09:13:16 | HTC Sensation
HTC製品を使っていて唯一嫌な事があります。
それはあのバカデカイ起動音。
電車や会社で再起動した時に突然あの音が鳴る時があって恥ずかしい思いをします。
どうせ恥ずかしい思いをするなら緊急地震速報の音(ギュイ!ギュイ!ギュイ!ってやつ)に変えようかとも思いましたが
かなり不謹慎なのでやめて、音を鳴らなくしてあります。

あれが鳴らなくする方法は簡単で
/system/customaize/resourceにあるandroid_audio.mp3を消すかリネームするだけ
これで金輪際あの音は二度と鳴らなくなります。ちょっと寂しい?
この起動音は伝統で今後変わる事が無いだろうから大丈夫だと思いますが
system領域のファイルを書き換える時はいきなり上書きせずにオリジナルを退避しておきましょう。
理由はOTAパッケージが当てられなくなる恐れがあるから。

HTCのOTAを解凍したことがある人は分かると思いますが、
systemフォルダの中には通常のリソースではなく良く分からないバイナリファイルが入っています。
あれはbdiffというバイナリ差分を抽出したもので、今あるファイルに差分補完することで新しいファイルが出来上がる仕組みになっています。
だからチェック部分を強制的に回避しても、もとのファイルが別物だとおかしな事になります。
これはOTAの容量を減らすと共に「容易に変更かけると後で面倒臭いよ」と言うHTCからのメッセージの様な気がします。
頭良いですよね。

HTC Sensation公式S-OFFを試してみた

2011-08-17 21:12:03 | HTC Sensation
バックアップの戻しミスでいつの間にやらROMが1.35.401.1に戻ってしまっていたので
公式S-OFFを試してみました。

この公式S-OFFですが、今の所EU版1.45.401.2でしか実行出来ません。
理由としてこのバージョンから入っているHBoot1.80がS-OFF対応ブートローダーとなっているためで
他リージョンの方は1.45.XXX.2がリリースされるまで待つか、リージョンロックを解いてEU版を入れるしかないですね。
後は、S-OFFが成功すると強制再起動が掛かってユーザーデータが消去されます。
何でこんな仕様になっているのか?それこそ先にRevolutionaryでS-OFFしてバックアップ取らないとちょっと使えませんね。

以下、手順です。
ここから開始しますが、まずはユーザー登録が必要となります。
HTCの分かりやすい説明が記載されていますが、fastbootが使える様になっていればすっ飛ばして進んで大丈夫です。
fastbootを使い端末キーを抜いてWeb上の入力フォームにコピーし送信します。
当然ですがHBootが1.80じゃないと端末キーは表示されませんからね。

登録したメアドに解除キーのリンクが添付されて送られて来るのでダウンロードします。
(ここのアップローダーが非常に怪しいので笑ってしまったw)
画面の説明にしたがってfastbootで解除キーを登録します。
ここで画面が切り替わって「S-OFFするの?しないの?」と聞かれるんです。
説明では音量キーがYes,Noの選択で電源キーが決定って書いてあるんですが
Yesを選んで電源キーを押しても一向に何も起こらない。
これは絶対にYesが選べない仕様なのかと思ってしまったw
色々触っているうちにNoに移動した瞬間に再起動が掛かりました。
この後何回か試したんですがS-OFFされようがされまいが、再起動の前には絶対にNoが選ばれた状態になるようです。紛らわしい。

S-OFFされると再起動後にユーザーデータがワイプされて、bootloader上部にUNLOCKEDが表示されるので確認して下さい。
当然fastbootでflashも出来ました。
後は解除キーを使ってS-ON,S-OFFが簡単に行き来出来るようになります。
でもその度にワイプされてしまうのでやっぱりRevolutionaryの方がいいのかなぁ。

Linuxサーバーが欲しいのです

2011-08-17 10:18:43 | 戯言
Linuxでビルド作業とかをしていると出先からでも常時接続出来るサーバーが欲しくなってきます。
電車でボーッとしている時にひらめく事が多いので、さっさと作業できると非常に嬉しいですね。
休みの日とかもスタバとかからリモートで作業できれば非常に捗るわけです。
昔は家に常時待機のLinux機が置いてあったんですけど、もう古いしこう暑いとオーバーヒートしそうだから使いたくない。
ノートPCを使うのが一番現実的ですかね?
欲を言うとディスプレイ、キーボードレスで小型で高性能なのがいいな。

デュアル、クアッドコアのスマフォが出てくる時代ですから、そんなのがあってもおかしくない。
ただ、買う人が限られていて売れそうにありませんがね。
Sensationにubunthを突っ込んだら結構使えるかも知れない。

HTC Sensationでアドホック接続

2011-08-17 02:02:03 | HTC Sensation
今日はアドホック対応のwpa_supplicantをビルドしてみました。
一応HTC Sensation用としておきますがv6のwpa_supplicantが乗った機体ならどれでも使えると思います。
バージョンの確認方法はこうやってvオプションをつけて叩きます。



テストはSIM無しDesireでWireless Tetherを起動して接続してみました。



ばっちり繋がっていますね。



一応ビルドした塊なのでlibwpa_client.soも付けていますが
wpa_supplicantの入れ替えだけで動くかもしれません。

Downloadはここから。
passはsensationです。

[Android]何故S-OFFを行うのか?

2011-08-16 01:12:11 | Android
前のrootとは何かの記事で書きましたが、rootは管理者ですからroot権限が使えれば一見何でも出来そうです。
しかしHTCの製品はちょっと特殊でして、rootであってもsystem領域の書き換えが出来ないようにセキュリティロックが掛かっています。これがS-ONです。
更にS-ONの状態では俺がシステムの一部を書き換えるのに使っているfastbootでの書き換えが出来ません。
この状態でroot権限が使えたとしても普通じゃ覗けないディレクトリ中を見てニヤニヤするか、一部の要root権限のアプリが使える様になるだけで
HTCが用意した使い方以外、何の手も加えられないんですよ。

もし、この状態である日突然あなたの使っていたスマフォがブート画面が表示されるだけで起動しなくなったとします。
そうするとHTCが用意しているRUU(Rom Update Utility)で初期化するしか直す方法が無くなります。
今まで折角使いやすくしてきた設定もインストしてきたアプリも皆消えてしまいます。
何かやる気を無くしますよね。
バックアップが取れればそんな問題も発生しないんですけど。

S-OFFを行うとカスタムROMの導入やsystem領域の書き換えとかが出来るようになりますが
弄っている人だって高いお金を出した機体ですから出来れば壊したくないわけです。
もし、おかしくしてしまってもバックアップから戻す事が出来るというお膳立てがあるから成り立っているのです。

S-OFFを行う恩恵は「バックアップが取れる状態になること」に尽きます。
別にS-OFFしたからと言ってカスタマイズしなきゃいけないわけでもありませんし、好きに使えばいいのです。

[Android] Androidの内部構成について

2011-08-16 01:08:12 | Android
今回はAndroidの内部構成について書きます。

・ Androidの起動モード

 Androidには通常起動モードとリカバリー起動モードがあります。
 通常起動はそのままなので分かるとして、
 リカバリー起動はファームのバージョンアップ適用時に使われるモードです。
 所謂、端末のメンテナンス用ですね。

・フラッシュメモリの構成

 Androidのファームウェアはフラッシュメモリに保存されています。
 ROMと呼ぶことが多いですが、ハード的なROMとは異なり書き換る事が可能です。
 このフラッシュメモリ領域はいくつかのパーティションに別れていて
 各々役割が異なります。
 代表的な領域と役割を以下に記載します。

 hboot領域

  所謂ブートローダーの領域です。
  Android起動時に最初に実行される場所で、
  ここが破壊されてしまうと起動不可に陥ります。
  S-OFFはこの領域を書き換えるので危険な行為ではあります。

 boot領域

  通常起動のシステム的にコアとなるファイルが納められた領域で
  Androidファイルシステム上のルートディレクトリに展開されます。
  この領域はファイル単体の変更、削除、新規作成が出来ない事になっています。
  変更する場合にはboot領域のイメージ(boot.img)を作って書き換える必要があります。

 recovery領域

  リカバリー起動時に使用されるファイルが納められた領域です。
  ファイル構成はboot領域とほぼ同じ内容で、
  やはりAndroidファイルシステムのルートディレクトリ上に展開されます。
  boot領域と同様にファイルの書き換え等は出来ません。

 system領域

  boot領域内のプログラムが実行される事により、
  Androidファイルシステム上の/system上にマウントされます。
  一定の手順を踏むことによりファイルの変更、追加、削除をすることが出来ます。
  設定から「工場出荷時に戻す」機能がありますが、
  この領域に加えた変更は元に戻りません。

 userdata領域

  Androidの個人設定や追加でインストしたアプリ等が保存される領域です。
  Androidファイルシステム上では/dataにマウントされます。
  「工場出荷時に戻す」はこの領域を消去することを指します。

 cache領域

  アプリのダウンロード時に一時保存キャッシュとして使用される領域です。
  Androidファイルシステム上では/cacheにマウントされます。

 radio領域

  スマートフォンの3G接続時に使用されるファームウェアが納められた領域です。
  Androidファイルシステム上からは見えない領域ですが
  新しいバージョンのradioに書き換える事により3Gの掴みが良くなったり、
  消費電力が抑えられたりする場合があります。
  但しradio領域とAndroidシステムには相性があるので、
  不用意に書き換えると不安定な状態に陥る場合があります。

 .android_secure領域

  アプリインスト時にSDカードにインストした場合の保存先です。
  当然本体の領域ではなく、/sdcard/.android_secureに存在します。
  この領域の中身は暗号化されていて通常は見ることが出来ません。
  このようにドットから始まる名称のディレクトリやファイルは
  隠しファイルを意味し特殊な用途に使用されます。

HTC Sensationバージョン1.45.401.2用のunsecureなbootイメージ

2011-08-14 21:19:27 | HTC Sensation
HTC Sensationバージョン1.45.401.2用のunsecureなbootイメージを作りました。
このunsecureなbootイメージは何かって事を一応書いておきますが
HTC製品のboot.imgはadbログイン時にrootじゃないんですよね。
だからremountなんかも使えなくて色々面倒臭いと。

と言うことでいきなりrootでログイン出来る様にしたのがこのboot.imgです。
ここに置いておきますので欲しい人はどうぞ。
passはsensationです。

後はOTAを強制で当てる方法ね。
リカバリー画面でボリューム上+電源でメニューが表示されるのでZIPを選んでインスト。





ファイルを入れ替えていたりするとこんなエラーになるので戻すと。



これが最後のリブート寸前の画面です。



但しこの方法で1.45.401.2を当てるとHBOOTが1.80になるので注意してくださいね。
そう言えばスクショがディフォルトで撮れるようになっていました。
キーはHomeキー長押しに変更された様です。

HTC SensationにAndroid2.3.4のOTAを当てた

2011-08-14 14:02:32 | HTC Sensation
家が暑いので外に逃げての更新です。

HTC SensationのアップデートOTAが来ていたので当ててみました。
今回はAndroid2.3.4への更新ですね。
アップデート通知は来ていませんでしたが、オフィシャルのリカバリーに入れ換えて強制アップデートをかけました。
アップデート後にRevolutionaryでhbootを入れ変える予定でしたが
hbootのバージョンが1.80に上がっていて、サポート外と言うことで使えませんでした。

と言うことでRUUで一度35.401にバージョンダウンして45.401をバックアップから戻し今に至ります。





一応つじつまは合わせたつもり。
家に帰ったらunsecureなboot.imgを作ります。
今回はカーネルのバージョンが上がってPHYS_OFFSETアドレスが変わってます。
いじる人は注意してくださいね。

電化製品の故障ラッシュが止まらない

2011-08-12 09:27:34 | 戯言
自宅のPCが壊れたのを見計らった様に洗濯機が壊れました。
うちの洗濯機は妻が大学生の頃から使っていたもの。
そろそろ20年経ちます。
故障する度に自分で修理して、この前もプーリーベルトを交換したばかりなのに。

今週末は修理ラッシュになりそうです。
クーラーも冷えが悪くなってきたし、フロンの再充填がしたいんだよな。
どうせならコンプレッサーを借りてエアパージしてやるかな。圧力計も実家にあるだろう。