新年でおめでたいのでiPhone5(iOS7)の脱獄をしてみることにする。

iPhoneの脱獄(Jailbreak、JBとも)というのは、Apple製のOSを書き換えて制限を解除し、AppStore以外のアプリを使用できるようにすることである。
脱獄するためのツールがネットで配布されている。

やる人とやらない人がいる。

ぼくは、JBなんかしなくても普通に生きていけると思っていたが、iOS5になって、日本語変換候補の表示のされ方がどうにも我慢できなくなった。
デカデカと変換候補が狭い画面の中に我が物顔で表示されるのである。
タテ持ちでフリック入力をするのなら問題ないかもしれないが、ヨコ持ちでQWERTY打ちだと問題になる。
Twitter公式アプリなど、入力行が一行しか見えない。

20140107_あ

JBすると、「InlineCandidate」というTweak(パッチ)が当てられるので、iOS4の状態になる。
昔のマンガの吹き出しのような状態になって、グッと見やすくなるのである。

20140107_b

たったこれだけのために、脱獄なんてことをしている。
Appleさん直してください。
ということで、iOS6をJBして使っていた。

そして、iOS7が出た。

iOSのバージョンが変わると、古いJBツールが通用しなくなる。
JBはAppleにとって、少なくとも建前上は好ましからざる行為であって、バージョンアップごとにその穴を塞がれるのである。

新しいiOSにする必要が別になければ、古いのを使い続ければいいが、「新しいバージョンに更新してください」とiTunesとかからいちいち言われるのがウルサイし、iOS7でなければ動かない新アプリも登場している。

iOS7は相当なメジャーアップデートで、JB成功までになかなか時間が掛かるとか、やれた人に100万円の賞金が出るとか、いろいろ言われていたが、12月に意外とあっさりJBツールが出た。
ということで、新年一発目の作業として、JBをしてみた。

以下はぼくがやった手順である。

(1)mobileとrootのパスワードをalpineに戻す

※2014-03-02追記:この作業は必要ありませんでした。あるiPhoneがJBしていて、mobileとrootのパスワードをalpine以外に変えていても、(2)以降のバックアップと復元の過程を行えば無事にパスワードはalpineに戻ります(DFUモードで復元することでユーザーが設定したパスワードは戻ります。)

iOSはもとはと言えばOS Xであって、もとはと言えばBSD UNIXである。
で、脱獄するとUNIXが生で使えるようになるので、mobileというユーザー名とroot(管理者ユーザー)というユーザー名でアクセス出来る。
これらのパスワードが、iPhone出荷時には「alpine」という文字列固定になっている。
(アルプスの、という意味だ)

だから、JBすると「管理者パスワードがみんなに知れ渡っているUNIXマシンを使ってネットに繋ぐ」ことになる。
危険なので、iOS6からJBするときにパスワードをぼく独自のものに変更していた。
これは脱獄者必須の手順である。
変更にはCydiaアプリのSYS Passwdというのを使う。
CydiaというのはJB版のAppStoreのようなもので、有料無料のいろんなJBアプリが置いてある。

これからJBの前にiOS7にバージョンアップする必要があるが、その際に入獄(脱獄前の状態に戻す)する必要がある。
そのために、変更したパスワードを工場出荷時に戻しておいた。
なお、これが必要がある手順かどうか分からない。

これ、ぼくはパスワードを覚えていたが、忘れてしまっても、PCにUSBで繋いでiFunboxのようなPC側からiPhoneのファイルをいじるツールを使えば、alpineに戻せるそうである。
ちょっと検索すればやり方が出てくる。

(2)バックアップ、入獄、アップデート

次に、iPhoneをパソコンに接続してバックアップする。
これはJBやアップグレードに関係なく、普段からiPhoneが壊れた時用にしておくべき作業である。

ただ、危険なJB作業を行うので、今回は念を入れて
 ・iCloudにではなく、ローカルのコンピューターにバックアップする
 ・暗号化バックアップを行わない
という設定をiTunes側で行う。
また、このためにPC側のドライブを余裕をみて開けておく必要がある。
ぼくのiPhoneは64GBなので最低でも64GB、できれば100GBは開けておきたい。

また、iPhone側の設定として、パスコード(暗証番号)によるロックを解除する必要がある。
あとでiPhone側で操作する必要があるが、その操作がロックされていると出来ない。

バックアップが済んだらアップデートを行う。
このとき「入獄」が行われる。
つまり、脱獄していたiPhoneがまた牢獄に入った状態になり、Appleの制限が掛かり、JBアプリが使えなくなり、日本語変換がiOS5状態になる。

ここまでの手順は以下のブログを参考にした。

[iOS6] 脱獄したiPhone5を元に戻すスマートな入獄方法ガイド

最後に復元するとき、さっきのバックアップから復元すれば、iOSのバージョンだけ上がって内容はそのまま前の状態になっている。
住所録、音楽はもちろん、WifiやBluetoothの設定まで残っているのである。
このへんがAppleはスゴイ。
Windowsと全然違う。

一つ戸惑ったのが、以下のアプリが移行されなかったことだ。

 Dropbox
 Air Playit
 Kindle
 iBooks
 Find iPhone

これらは、iOS6とiOS7で全然違うから移行されなかったようだ?
よく分からない。
改めて再インストールすると問題なく使えた。

(3)JB

いよいよJBだ。
このブログを参考にした。

[iOS] 『iOS 7.0~7.0.4』を完全脱獄する方法!『evasi0n 7』 iPhone 5sやiPad Airにも対応 | Tools 4 Hack

(我ながら人のブログを参考にばっかりしているブログだなあ〜)

ビクビクしながら行ったのだが、拍子抜けであって、あっという間に完了した。
まあ運が良かった、ということかもしれない。
読者のみなさんにおかれては自己責任でお願いします。

で、早速SYS Passwdを使ってmobileとrootのパスワードをalpineから独自のものに変えた。

SYS Passwd - 最低限のセキュリティ対策!! rootとmobileパスワードを変更する [JBApp] | Tools 4 Hack

これは可能な限りすぐ行う必要がある。

で、早速上述の予測変換候補をiOS4状態に戻すInlineCandidateを使った。

InlineCandidate - 入力変換候補をiOS 4の時と同じくカーソル位置に表示する [JBApp] | Tools 4 Hack

ホッと一息である。
次にDateCarrierというのを使ってみた。

キャリア名を日付に変更する - 最新脱獄アプリ

これは、iPhoneのステータスバー(最上部分)にずーっと表示されているキャリア名(ぼくの場合はKDDI)を消して、代わりに01/07/2014のような日付を表示するものだ。
こういうちょっとしたアイディアが楽しく、かつ実用的である。

逆に、定番のSBSettingsというのは入れないことにした。
これは、他のアプリを使っているときでも、WifiやBluetoothをサッとON/OFFする画面を表示できるスグレモノであったが、iOS7で標準の「コントロールセンター」(画面を下からスワイプすると出てくる)に装備されてしまったので、tweakする必要性が薄れてしまったのだ。
つまり、JBはAppleの「完全な敵」ではなく、Appleに先駆けてユーザーが必要なデザイン、アイディアを供給する実験場であると言えると思う。
オバマがTPPに合わせてJBを違法化しようとしているという話もあるが、Appleもそんなことを望んでいないのではないだろうか。
オバマはBlackberryを使っていればいいと思う。

iOS7のJBで今回話題というかスキャンダルになったのが、JBアプリのマーケットとしてCydiaの他に「Taig」(太極助手)がバンドルされていたことだ。
TaigにはJBアプリの他に、コマーシャルアプリの海賊版も収録されていたと言う。
本当ならば大問題だ。
JB開発者は即座に対応し、Taigを削除することを決めた。
ここにも、Appleや社会の敵にはならないという、JB開発者の誠意が伝わってくる。