[UPDATE4]iOS4.2.1の仮脱獄(tethered jailbreak)てどんなもの?

Appleから待望のiOS4.2.1がリリースされ、ほぼ同時にDev-Teamからはredsn0w 0.9.6b4の脱獄ツールがリリースされました。iPod touch 3GをiOS4.2.1にアップデートして、仮脱獄(tethered JailBreak)を試してみました。

注意喚起情報
JailBreakされたiPhone/iPad/iPod touchはメーカー保証対象外となるため動作不良や故障に陥ってもサポートを受けることができません。万一の際には保証期間内であっても有償となってしまいます。また、JailBreakはアップル社のセキュアな環境を無効化することになるため、外部からの侵入によってウィルスに感染し動作が不安定になったり、個人情報等が流出してしまう可能性(危険)を伴うものです。これらのリスクを理解出来ない、または自ら当該リスクに対処することができない場合はJailBreakしないようにしてください。

JailBreakとその危険性についてはこちらのサイトで詳細に説明されていますので是非確認してください。
をぢの日記【iPhone_JB】Jailbreakによるリスクと問題について

仮脱獄(tethered JailBreak)は、完全に脱獄した状態ではないために、その状態と区別され、リブートするたびに母艦側のredsn0wの助けを借りてカスタムブートローダーをiPod touchのメモリにアップロードする必要があることから「紐付き(tethered)」という意味でそう呼ばれています。iPod touch 3GとiPhone4、iPad WIFI+3G(US版)で確認していますが、未確認ですがおそらくiPod touch 4G、iPhone4も同様のはずです。

実は、今回は、前回のiPod touch 3GやiPhone3GSの新ROMであった「仮脱獄」とは異なります。前回の仮脱獄はリブートまたは電源オフの状態から起動するとスクリーン上にiTunesのアイコンとUSBケーブルが表示され、母艦からexploitを送り込むまでは起動自体ができない状態でした。今回はリブートまたは電源オフからでも母艦なしに正常に起動しますが、非JailBreak状態となります。JailBreak状態にするために母艦に接続してredsn0wを使う必要があります。そのため仮脱獄であることには変わりありません。

ただし、不意にリブートしたり、させてしまっても非JailBreak状態にて起動させることができるので、前回の仮脱獄とは精神的な負担がずいぶんと違う気がします。前回と同じ「仮脱獄」という言葉が適当ではないような気がしますが、それらしい単語が思い浮かばないので、とりあえず「仮脱獄」と呼ぶことにします。
参考:仮脱獄ってなんぞ? iPod touch第3世代編【動画あり】

—2010年11月24日追記—
Dev-Team BlogにUpdate #2として追記された箇所が非常に重要なので注意してください。つまり、起動時の重要なプログラム(SpringBoadやCommCenter等)をフックするようなTweaksをインストールした場合に、非JB環境ではそれらが正しく動作せず起動できない(りんごループ)可能性があります。 もちろん母艦側からredsn0wで”Just boot tethered right now”すれば起動するようですが。明確に影響のないアプリやtweaksを見分けられるユーザにとっては回避できる事象ですが、そうでないユーザは注意が必要です。

—2010年11月25日追記—
SBSettingsをインストールした状態でリブートし非JB環境での起動を試みましたが、MobileSubstrate.dylibやCydiaSubstrate.framework以下のファイルがロード出来ずに起動できませんでした(りんごマークの状態)。この状態から起動するには母艦からのアシストが必要になります。

—2010年11月27日追記—
tethered jailbreakのiPhone/iPod touchを再起動すると非JB状態になりJBアプリやtweakは動作しませんが、母艦からDiskAidなどのファイルエクスプローラ系アプリで全root領域を確認する(読み書き可)ことが可能でした。OpenSSHはさすがに立ち上がってないのでアクセスできませんでした。

MobileSubstrate系のアプリやtweakを入れていると再起動してもりんごマークの状態でうんともすんとも言わない状態になりますが、この状態では母艦からのアクセス(DiskAid、OpenSSH)もできませんでした。

準備するもの
・iOS4.2.1にアップデートしたiPod touch 3G、iPhone4
・redsn0w 0.9.6b4
・iPod3,1_4.2.1_8C148_Restore.ipsw、iPhone3,1_4.2.1_8C148_Restore.ipsw

JailBreak手順
iPod touch 3Gを母艦に接続し、redsn0wを起動します。

“Browse”ボタンをクリックして、”iPod3,1_4.2.1_8C148_Restore.ipsw”を読み込みます。redsn0wが正しいfirmwareかどうかを確認し、問題なければ”IPSW successfully identified.”と表示しますので、”Next>”ボタンをクリックします。

iPod touch 3Gに送り込むJailBreakデータを作っています。

初回にJailBreakする場合は、”Install Cydia”をチェックし、バッテリー残量を%表示させたい場合は”Enable battery percentage”にもチェックして、”Next>”ボタンをクリックします。 iPhone4、iPadは標準で表示可能なため”Enable battery percentage”の項目はありません。

iPod touch 3GをDFUモードにしてJailBreakに必要なexploitを送り込むための準備をします。iPod touch 3Gを母艦に接続した状態で電源をオフにします。”Next>”をクリックすると、DFUモードにするためのインストラクションが開始しますので、次からの手順を覚えてから先に進んだほうがスムーズに成功できると思います。

電源ボタンを3秒間押し、電源ボタンはそのまま押し続けホームボタンも同時に10秒間押します。そして電源ボタンから手を離します。インストラクションでは15秒ですが、自動的にその先に進めばホームボタンからも手を離して大丈夫です。あとは、iPod touch側の作業のみのため”Finish”ボタンを押しても問題ありません。

DFUモードに入れなかった場合は次のようなメッセージが出て、もう一度やり直すことができます。

JailBreakのためのプログラムをiPod touch 3Gに送り込んだ後のiPod touch 3Gの様子です。

初回のJailBreak作業が完了するとホームスクリーンにCydiaのアイコンが表示されますが、タップしても反応しません。もう一度、redsn0wで、今度は”Just boot tethered right now”を選択して、DFUモードからexploitを送り込む必要があります(最後の画面のインストラクションのとおり)。

無事完了すると以下のとおりCydiaのアイコンが正しく表示され、Cydiaにアクセスすることができるようになります。

JailBreak状態からリブートすると非JailBreak状態となり、その後、redsn0wを使ってJailBreak状態に戻すところの動画です。

iPad WIFI+3G(US版)のJailBreakもiPod touchやiPhoneと同様です。CydiaがiPad用にカスタマイズされていましたので何枚かスクリーンショットをご紹介します。

1回目のredsn0wではCydiaアイコンは白い状態

2回目のredsn0wで”Just boot tethered right now”を実行すると完了

最初のCydiaアイコンをタップするとfilesystemをイニシャライズして終了

次のCydia実行でユーザレベルを選択。選択ウィンドウがiPad専用のUIに変更されている

US版ユーザお待ちかねの例のもの

続きを読む [UPDATE4]iOS4.2.1の仮脱獄(tethered jailbreak)てどんなもの?