昨日はラマダン明けとゆーことで、同僚のDaliaにランチを招待された。で、F氏と主に彼女のアパートに赴く。Missoulaから彼女の3人の友人が訪れていてかしましい。ソレとは対照的にやはり同僚のKimは終始、静かであった。まあ2時間ほど、ココで拘束されたがさすがにF氏の試験勉強に支障が出そうだったので辞することにしたのであった......

 さて昨夜からちょっとiPod touchの改造をしてみようと思い立ったのである。mixiやら某巨大匿名掲示板で話題になっているiPod touchへのネイティヴアプリケーションのインストールだ。tiff画像処理に関するOS側の脆弱性をついたものとゆーことで、現ファームウェア(1.1.1.)より上のバージョンではおそらくふさがってしまうだろう。Appleがそんな脆弱性を見逃すハズはないので、このインストール法も次回のアップデートでは利用できなくなると思っていた、だから今回はスルーするはずだったのだが......負けますた_| ̄|○

 mixiの連中でターミナルをいじったことのないヒトたちなんかがいじくっては失敗して、なんとかしてくれ~とかいう書き込みを見ていると、だんだんちょびっと悔しくなってきたのでやってみることにした。まずiPod touchのOSはMac OSXのサブセットである。またOSX自体はNetBSD系だったとキオクしている。(確かではない、専門家でもないし、間違ってるかもデス......)mixi連中をちょっと初心者呼ばわりしているワタシ自身、初心者に毛が生えた程度である。ただむか~し、壊れたMacintosh SE30を研究室からいただいたので、それを修理し(アナログボードの半田付けが甘くなっていたので、その付け直し)、NetBSDをインストールしたのだ。今でこそ、OSXとWindowsのファイルのやりとりは簡単になっているが、当時はそれなりに大変だったのだ。そこででこのNetBSDをファイルサーバーとして利用していた。またワタシが学生の頃は結晶構造を解くのにSGIのワークステーションが主流であったため、(System V系ではあるが)UNIXの基本的な操作は知っていた。

 ハナシがちょっとそれてしまったが、iPod touchである。これにPDA並の機能を付加しようというのである。つい1週間前まではWindowsでは数十のステップを経てJailbreakが可能であったようだが、最近は全部入りのアプリが出回っている。リンク先にやり方も書かれているが、あくまでiPod touchが動かなくなっても自己責任でお願いする。

 さてワタシはめんどくさかったので全部入りの"touchfree5"を利用した。上記のリンクからzipファイルをダウンロードできるはずだ。ちなみにiPod touch側の無線LANなどの基本的な設定は全部出来ていることが前提だ。まずはiPod touchのSafariで上記のリンクに示されているサイトにアクセスし、Safariを意図的にクラッシュさせる。このあとiPod touchはホーム画面に戻るので、ここでPCと接続。この際iTunesと自動的に同期させないようにタスクマネージャーなどでiTunes関連のプロセスを停止させておく。iPod touchがPCに認識されたことを確認したら、touchfree.exeをダブルクリックで起動させる。ターミナルがあらわれて、以下のように進む。

d4c32578.jpg

dfbcac37.jpg

884edc7d.jpg

この画面で5~10分ほどまつiPod touchの再起動を促すメッセージ最後の再起動

 再起動はiPod touchの左上のボタンを長押しし、画面に電源オフのスライドが現れるので、これでオフ。完全に落ちたことを確認したら、再度、左上のボタンで起動させる。もし再起動を促す画面で再起動をせずに進めてしまった場合は、iPodをiTunesで復元させてから、もう一度、Safariをクラッシュさせるところからはじめなければならない。(少なくともワタシの環境ではそうだった。)再起動を促す場面は3回。最後の再起動の後、iPod touchは自動で4回目の再起動を行う。この4回目の再起動の後、ホーム画面を見ると、インストーラーのアプリケーションが増えているはずだ。

0ee288c1.jpg

d03cbb94.jpg


Jailbreak前インストーラが増えている

 このインストーラをタップすることでたいていのアプリをインストールすることができる。ただしiPhoneに搭載されているメールやGoogleMapsなどは別の方法が必要だ。まずiPhoneにデフォルトで搭載されているアプリ群をどーにかして手に入れる。Macユーザーならば、OSXのどこかにあるはずだが、Windowsの場合、ココからダウンできるかもしれない。このファイルを適当な場所で展開しておく。次にiPod touch側のファイルシステムにアクセスするためにシェル、(ここではSSH)を利用する。そのため事前にiPod touch側のIPアドレスを確認しておく。アクセス方法は現状、無線LAN経由のみなのでSSHでiPod touchのIPアドレスを指定、usernameを"root"、passwardを"alpine"としてiPod touchのファイルシステムに入り込める。(ただしこのデフォルトのパラメータはすでに広く知られているので、JailbreakしたiPod touchは常にハッキングされる危険性にさらされる。ゆえにココでも紹介してあるように、すべてのインストールが完了したのちにはSSHのポートを閉じるかあるいはrootユーザーのパスワードを変更すべきである。)
03c766a9.jpg
 ここでワタシはWinSCPを利用した。ファイルの転送や権限の属性変更などをマウス操作で行えるので便利である。左のペインがPC側、右側がipod touchである。左の階層をアプリを解凍した場所(たとえばデスクトップ上のフォルダとか)に指定し、iPod touchのディレクトリを一番上の/にすると、 PC側で解凍したディレクトリと同様の構造が見える。それぞれ、 System/Library/Frameworks/に行って、GMM.frameworkをコピー、System/Library/PreferenceBundles/に行って、MobileMailSettings.bundleをコピーする。次にそれぞれ(PCおよびiPod touch)のApplicationsのディレクトリに行き、同様に.appのファイルをiPod touch側へコピーする。
 最後にPuTTYを起動させて同様のユーザーネーム、パスワードでiPod touchにアクセス。

052b079a.jpg

bc5b239c.jpg

PuTTYはこんな感じなら成功Jailbroken iPod touch

 上記でWinSCPで権限変更できると書いたが、属性の意味をすっかり忘れてしまったのでここではネットで拾ってきたコマンドでお茶を濁す。

/bin/chmod -Rf +x /Applications/

 上記コマンドをPuTTYを介してiPod touchに転送。これでアクセス権限は変更される。このコマンドが通ったら、WinSCPおよびPuTTYを終了。(しなくてもいいけど......)iPod touchを再起動すれば上の右の様にMailやらMapやらのアイコンが現れるワケだ。Apple純正アプリ以外はインストーラでインストールできるのだが、ホームなどの見た目を変えられるSummerBoardはインストーラ経由ではうまくいかない。(ただし、一度、インストーラでインストールしておいた方が良い。)上記の様にWinSCP経由でインストールすればうまくいくはずだ。

 改めて言うが自己責任なので、上記の説明で不足している情報を自身で調べられるヒトしかオススメしません。