iPod touch jailbreak

素人にはお勧めできない

1.1.1にダウングレード

1.1.1のバイナリを取得
http://appldnld.apple.com.edgesuite.net/content.info.apple.com/iPod/SBML/osx/bundles/061-3932.20070927.p23dD/iPod1,1_1.1.1_3A110a_Restore.ipsw
iPodをPCに接続
iTunesを立ち上げる
電源ボタンとホームボタンを同時に押し続ける
電源が落ちたら、電源ボタンだけを離す
[ iTunesはリカバリモードのiPodを見つけました ]と出る
Shiftキーを押しながらiTunesで復元ボタン
1.1.1のバイナリを指定して復元作業を行う
復旧終了

1.1.1のJailbreak
復元が完了したら、safariで jailbreakme.com にアクセス
画面最下の Install AppSnapp を選択実行
1.1.1 の Jailbreak 完了

1.1.2にアップグレード
v1.1.2 Jailbreakツꀀソフトをダウンロード
http://conceitedsoftware.com/iphone/site/112jb.html
展開しておく

1.1.2のバイナリを取得
http://appldnld.apple.com.edgesuite.net/content.info.apple.com/iPod/SBML/osx/bundles/061-4036.20071107.9g3DF/iPod1,1_1.1.2_3B48b_Restore.ipsw

Jailbreak済みv1.1.1 の「iPod touch」から、Installer.app を起動。Tweeks 配下の”OktoPrep”をインストールする。
iPodをUSB接続、iTunesで認識させる
Shiftキーを押しながらiTunesで更新ボタン
1.1.2のバイナリを指定して更新作業を行う
更新が無事終了したら、iTunes を閉じる

1.1.2のJailbreak
v1.1.2 Jailbreakツꀀソフトを展開したディレクトリの windows.bat を実行
1.1.2 Jailbreak のウインドウが出てくる
Install SSH にチェックをつけて、”Jailbeak!”のボタンを押す
10分程度で作業終了
iPodを再起動させて、正常に起動すればOK

1.1.3のJailbreak
Jailbreak済みv1.1.2 の「iPod touch」から、Installer.app を起動。System 配下の”Official 1.1.3 Upgrader”をインストールする。
インストールした”Upgrade”というアプリを起動します。

アップグレードのスクリプトが走り、以下のように進捗が表示されます。

メッセージは以下のように変わります。終了まで40分程度はかかるので、下記メッセージを進捗の目安にしてください。

  1. Downloading restore ipsw:
  2. Decrypting firmware:
  3. Decompressing firmware:
  4. Reading existing image:
  5. Mounting new system image ・・・
  6. Copying data to system image:
  7. Writing image:

終了後、以下のメッセージが出れば成功です。

term-vt100でパスワードを入力するもログインできない場合
Installer の Sources に www.trejan.com/irepo を追加
SUID Lib Fix
Term-vt100 SUID Fix
をインストール
パスワード alpine でアクセスできるようになります

パスワードの変更について

1.1.3
jailbreakした後、passwdコマンドでパスワードを変更すると、
SpringBoardが数秒毎に再起動を繰り返してしまう問題が発生しま
す。
これは、BSD
Subsystemに含まれるpasswdコマンドが
ファームウェア1.1.3の/etc/passwdおよび/etc/master.passwdファ
イルを
壊してしまうことにより引き起こされる問題のようです。

したがって、BSD
Subsystemのこの問題が解決されるまでpasswdコマンドを実行してはいけません。
かといって、ユーザrootとmobileのパスワードをデ
フォルトのalpineにしておくわけにはいきませんので、
以下の手順に従って /etc/master.passwd を直接編集しておくことをお勧めしま
す。

/etc/master.passwd は以下のように1カラム目がユーザ名、2カラム目がDESエンコードしたパスワードになっています。

##nobody:*:-2:-2::0:0:
Unprivileged User:/var/empty:/usr/bin/falseroot:/smx7MYTQIi2M:0:0::0:0:
System Administrator:/var/root:/bin/shmobile:/smx7MYTQIi2M:501:501::0:0:
Mobile User:/var/mobile:/bin/shdaemon:*:1:1::0:0:
System Services:/var/root:/usr/bin/falseunknown:*:99:99::0:0:
Unknown User:/var/empty:/usr/bin/false_securityd:*:64:64::0:0:
securityd:/var/empty:/usr/bin/false

すべて1行です。
この2カラム目をviなどを使用して編集すれば問題は解決します。
Mac OS Xにはcryptコマンドがありませんので、
代わりにperlのcrypt()関数を使用してDES暗号化されたパスワード文字列を取得します。

$ perl -e 'print crypt("YOUR_PASSWORD", "SA"), "\n";'SAb.ud/B16dTo

ここで、YOUR_PASSWORDの部分を実際に使用するパスワードに変更してください。
SAの部分はsaltと呼ばれる暗号化の種ですので、

意の2文字を与えてください(例えば、パスワードalpineの暗号化には”/s”が使われています)。
crypt()関数の実行結果としてsalt2文
字から始まる13バイトの文字列が得られますので、
これを/etc/master.passwd内のパスワード(/smx7MYTQIi2Mの部分)と置
き換えて保存します。

Installerのアップデート
1.1.3をJailbreakするとinstallerが起動しなくなる場合の対応
http://rapidshare.com/files/87360689/Installer.zip.html
から、最新のinstallerをダウンロード
解凍して、Applications にコピー

# cd /Applications
# chmod +s Installer.app/Installer
# chown -R root:wheel Installer.app

を実行すること

iPod touch jailbreak