Kindle Paperwhite: Jailbreak & SSH 接続
概要
Amazon Kindle の Jailbreak はその本体がリリースされた当初からコミュニティによって活発に行われてきた。初期の手法はメーリングリストを通じて個々のユーザの作業によって貢献されてきた。しかしその積み重ねによって現在では情報が散在し、情報も口語の英語で書かれていて理解しにくい状況となっている。さらに、機種によって Jailbreak の方法が異なるケースもあり、自身の機種に適切な情報を見つけることが一層困難となっている。
このページは Kindle Paperwhite をターゲットに Jailbreak (脱獄) し、ssh 経由で接続してコマンドライン操作ができるようにするまでの手順を記載している。実際にこのページの手順で作業を試した Kindle Paperwhite モデルは以下の通り。
Kindle モデル | 世代 | 型番 | ファームウェアバージョン | 画面 | 結果 |
---|---|---|---|---|---|
Kindle Paperwhite 3 (2015) Wi-Fi | 7th | PW3 | 5.13.6 (3731990038) | モノクロ 16 階調 E Ink / 6 型 / 1072✕1448 (300ppi) | ✅ |
Kindle Paperwhite 2 (2013) Wi-Fi | 6th | PW2 | F5.12.2.2 (3791510038) | モノクロ 16 階調 E Ink / 6 型 / 1072✕1448 (300ppi) | ✅ |
Kindle Paperwhite (2012) Wi-Fi | 5th | PW | 5.6.1.1 (2689890035) | モノクロ 16 階調 E Ink / 6 型 / 768✕1024 (212ppi) | ✅ |
Kindle Basic 2 (2016) Wi-Fi | 8th | KT3 | 5.12.2 (3569650025) | モノクロ 16 階調 E Ink / 6 型 / 600x800 (167ppi) | ✘ |
試した中では Kindoe Paperwhite 3 と 2 がおすすめ。初代 Kindle Paperwhite は経年劣化で滑り止め加工が加水分解してベタベタになっていたり、ステータスバーがゴミ
Kindle シリーズの Jailbreak は型番やファームウェアによって手順が異なるため注意が必要である。このページに記載した手順で Jailbreak 可能なモデルは概ね 2012 - 2021 年の Kindle Paperwhite と想定しているが、それ以外のモデル (例えば古い Kindle Touch や Kindle Oasis、最新の Kindle Paperwhite など) にも適用できるかも知れない。
最新モデルを含む 5.15 以降のファームウェアを持つ Kindle Papwerwhite 端末を Jailbreak する手段はまだ確立されていないことに注意。最新ファームウェアではダウングレードも阻止されているため、Jailbreak して使用することが前提であればアップデートは行ってはならない。
Jailbreak 済みの Kindle 端末が自動アップデートされてしまったのであれば、工場出荷時リセットを行っていなければ この投稿の 13 からの手順で回復できるという情報がある (未確認)。
Table of Contents
- 概要
- 1. 準備
- 2. Jailbreak の実施 (PW2 以降)
- 3. Jailbreak の実施 (PW 以前)
- 4. ランチャーとインストーラーの設定
- 5. Wi-Fi 経由の ssh 接続設定
- トラブルシューティング
- 参照
1. 準備
まず Kindle Paperwhite 本体 (以下 Kindle と表記) の型番を確認し、リセットして工場出荷時の状態にする。
以下、Kindle 本体が USB ケーブルで PC と接続されているかで挙動が変わるケースもあることから、指示があるまで USB ケーブルを接続しないことを推奨する。このため作業前に Kindle 本体を十分に充電しておくことをおすすめする。
1.1 型番の特定
Kindle のシリアル番号を参照し (Fig 1)、Kindle Serial Number [2] や Which Kindle do I have? A quick guide to identifying all of Amazon's e-readers [4] で型番を調べる。シリアル番号の参照方法は型番によって異なるが Settings からたどることができる。
- ☰ → Settings → ☰ → Device Info、または
- ☰ → Settings → Device Options → Device Info
例えば Fig 1 で使用した端末のシリアル番号は G090KB0361650BFB であるため型番は PW3 となる。またファームウェアバージョンを記録しておく。
1.2 工場出荷時リセット
Kindle の工場出荷時リセットを実行する。
- ☰ → Settings → Device Options → Reset → YES (Fig 2)、または
- ☰ → Settings → ☰ → Reset → YES
起動後の言語選択では必ず English (United Kingdom) または en_GB を指定する (Fig 3)。
自動アップデートなどを避けるため Wi-Fi 設定はスキップする。CONNECT TO WI-FI → × (閉じる) → SET UP KINDLE LATER → YES でスキップできる。
なお Jailbreak 作業中に Kindle 本体を工場出荷時の状態に戻したい場合はトラブルシューティングの方法を使うこともできる。
2. Jailbreak の実施 (PW2 以降)
この章では工場出荷リセット直後の型番 PW2, PW3, PW4, PW5, KV, KT2, KT3, KT4, KOA1, KOA2, KOA3、ファームウェア 5.12.2.2 ~ 5.14.2 の Kindle で有効な方法を説明する。より古い Kindle ではこの章をスキップして次章 PW1 以前の手順を参照。
この手順は WatchThis - Software Jailbreak for any Kindle <= 5.14.2 [3] に基づいており、実際の操作や画面をより詳しく具体的に説明したものであるため、元のページも併せて参照することを推奨する。
2.1 ソフトウェアのダウンロード
WatchThis - Software Jailbreak from any Kindle <=5.14.2 [3] から watchthis-jailbreak-r03.zip をダウンロードして展開する。
ZIP ファイル内の自身の Kindle に該当する watchthis-release/
MODEL
/MODEL
-VERSION
に demo.json とMODEL
-VERSION
.zip が含まれていることを確認する。Fig 4 はそれぞれ PW3 と 5.13.6 の例である。
2.2 デモモード起動
検索ボックスに
;enter_demo
と入力し Enter を押す (Fig 5; 検索ではない点に注意)。ホーム画面が表示され見た目上の変化はないが、これで次回の再起動のときにデモモードに入る。電源ボタン長押し → RESTART で Kindle をリスタートする。
起動後の Wi-Fi 設定は前回同様スキップする。
Register This Demo というプロンプト画面で Store Name を適当に入力して CONTINUE を押す (Fig 6)。
Fetching available demo types は Skip (Fig 7)、Select demo type は画面中央の Standard (Fig 8)、Demo Mode: Add Content は Done (Fig 9) を選択する。
なお Demo Mode: Add Content 画面は後の手順にも出てくるがここではまだファイルを転送しないこと。
画面が切り替わると自動でスクリーンセーバーがパラパラと切り替わるデモ画面 (未構成) が表示される。
画面をタップすると CONFIGURE DEVICE と表示されるので、Fig 10 のように 1.画面右下を縦に二本指でタップして、2.画面下を左方向にスワイプするとホーム画面が表示される (ややコツがいるので何度も試してみる必要がある)。
表示されたホーム画面で検索ボックスに
;demo
と入力し Enter を押すと Demo Menu が表示される (Fig 11, Fig 12)。表示されたメニューから Sideload Content を選択。Fig 13 の画面が表示されデータ転送が可能になる (デモモード中はデフォルトでは USB ケーブルを接続してもデータ転送モードにならない)。
2.3 Jailbreak の実行
PC と Kindle を USB ケーブルで接続する。USB Device Mode となり外部ストレージとして認識される。
Kindle ストレージのルートディレクトリ直下に .demo/ というディレクトリを作成する。
ZIP ファイル内の watchthis-release/
MODEL
/MODEL
-VERSION
に保存されている demo.json とMODEL
-VERSION
.zip ファイルを Kindle の .demo/ ディレクトリにコピーする。.demo/goodreads という空のディレクトリを作成する。最終的に Fig 14 のような配置になる。
USB ケーブルを外すと Fig 13 画面に戻るので Done を押し、Fig 12 の Demo Menu を Exit する。
Kindle ホーム画面で以下のいずれかの手順を踏むと本体がリスタートして Jailbreak が始める (Fig 19)。
Settings から Help & User Guides → Getting Started を選択。
PW3: 検索ボックスで
;dsts
と入力して Enter を押して (Fig 16) 表示された設定メニューから Help & User Guides → Getting Started を選択。PW2: Store のショッピングカートを選択。
Getting Started の選択でリスタートせずに User Guide が表示された場合、手順の何かが間違っている可能性があるため、正しい場所にファイルが配置されているかなどを確認する。またはトラブルシューティングにしたがって工場出荷時リセットを行ってやり直す。
2.4 ホットフィクスの適用
起動したら検索ボックスに
;uzb
と入力して Enter を押す (Fig 20; 画面上は何も起きないが USB Device Mode が有効になる)。USB ケーブルで PC と接続し、ZIP ファイル内の
watchthis-release/Update_hotfix_watchthis_custom.bin
を Kindle 端末のルート直下にコピーする (Fig 21)。USB ケーブルを取り外す。
検索ボックスに
;dsts
と入力し Enter を押して再び Settings メニューに入る (Fig 16, Fig 17)。Devide Options → Update Your Kindle → OK を選択する (Fig 22)。カスタム Hotfix がインストールされ再起動が始まる。これによりデモモードから抜け、アプリケーションレジストリが再構築され、不要な Jailbreak 用のファイルが削除される。
Jailbreak 作業の完了を確認したら次のセクションをスキップして 4 章に続く。
3. Jailbreak の実施 (PW 以前)
この章では工場出荷リセット直後の型番 KT, PW, PW2、ファームウェア 5.0 ~ 5.4.4.2 の Kindle で有効な方法を説明する。前章の手順に成功している場合、この章は読み飛ばして良い。
3.1 Kindle 5.6.1.1 から 5.3.3 へのダウングレード
初代 Kindle Paperwhite (型番 PW, 2012 モデル) のファームウェア 5.6.1.1 のように、この章で説明する方法の対象から外れている場合はファームウェアのダウングレードを実施することで回避ができる。
Amazon サイトからファームウェア 5.3.3 をダウンロードする (未確認だが 5.4.4.2 の方が良いかも知れない)
USB ケーブルで Kindle を PC に接続する。USB ケーブルはダウングレード作業が終わるまで接続したままにしておく。
ダウンロードしたファームウェア update_kindle_5.3.3.bin を Kindle 本体のルートディレクトリ直下にコピーする。
コピーが完了したら、少なくとも 2 分待つ。
Kindle 本体の電源ボタンを長押しして再起動すると Software Update 画面が表示されファームウェアのインストールが始まる。
インストールが終わると Kindle 本体が再起動するので、起動後に USB ケーブルを切断する。Defice Info でファームウェアを確認できたら完了。
この節の説明は How to Downgrade PW 1 ca from 5.6.1.1 to 5.3.3 and maybe PW2 [5] および Jailbreak Kindle Paperwhite 1 with 5.6.1.1 [6] を参考にしているので併せて参照することをおすすめする。
3.2 Jailbreak の実行
ファームウェアを 5.3.3 にダウングレードしたことで Kindle Touch/PW1/PW2 5.0.x - 5.4.4.2 JailBreak. Plus FW 5.x USBNetwork. [7] で紹介されている方法が使えるようになる。
Snapshots of NiLuJe's hacks [8] から K5 JailBreak (5.0.x - 5.4.4.2) の kindle-jailbreak-1.16.N-r19426.tar.xz をダウンロードして解凍する。
アーカイブに含まれる kindle-5.4-jailbreak.zip という ZIP ファイルを展開して、そこに含まれているすべてのファイルをそのまま Kindle 本体のルートディレクトリ直下にコピーする。
Kindle の USB ケーブルを外し ☰ → Settings → ☰ → Update Your Kindle を選択する (Fig 24)。画面下に **** JAILBREAK **** と表示されていれば (Fig 25) Jailbreak は成功している。
なお、ファームウェアのダウングレードを行った場合は、Jailbreak が終わった後に update_kindle_5.6.1.1.bin などを使用して前節と同じ手順で元のファームウェア (この場合は 5.6.1.1) に戻しても良い (未確認)。
Jailbreak の作業が完了したら 4 章に続く。
4. ランチャーとインストーラーの設定
Jailbreak が完了したら KUAL (Kindle Unified Application Launcher) と MRPI (MobileRead Package Installer) をインストールする。KUAL は Jailbreak 後の Kindle 向けのアプリケーションランチャーユーティリティである。
ここでもファームウェアによって必要なファイルや手順が異なるため注意が必要である。この節での説明は Installing KUAL/MRPI に基づいている。
4.1 KUAL と MRPI のインストール
PC と Kindle を USB ケーブルで接続し、PC からストレージとして認識させる。
Snapshots of NiLuJe's hacks [8] から KUAL と MRPI アーカイブファイルをダウンロードして展開する。
ファームウェア 5.9 以降:
KUAL (coplate): KUAL-f190a38-20240104.tar.xz⇨ アーカイブ内の Update_KUALBooklet_f190a38_install.bin を Kindle ストレージの mrpackages/ ディレクトリにコピーする。
ファームウェア 5.8.x 以前:
KUAL : KUAL-v2.7.32-g74c69f9-20240104.tar.xz⇨ アーカイブ内の KUAL-KDK-2.0.azw2 (K2, DX, K3, K4 の場合は KUAL-KDK-1.0.azw2) を Kindle ストレージの documents/ ディレクトリにコピーする。
MR Package Installer: kual-mrinstaller-1.7.N-r19303.tar.xz
⇨ アーカイブ内の extensions/ と mrpackages/ の 2 つのディレクトリを Kindle ストレージのルート直下にコピーする。
USB ケーブルを取り外す。
ファームウェア 5.9 以降: Kindle の検索ボックスに
;log mrpi
と入力して Enter を押すと MRPI が起動する (Fig 26)。画面上に Hush, little baby... (おやすみ赤ちゃん) と表示され Kindle が再起動する (Fig 27)。起動するとホーム画面に KUAL という新しいブックが追加されている (Fig 28)。ファームウェア 5.8.x 以前: USB ケーブルを外すと Kindle ホームに Kindle Launcher という新しいブックが追加されている (Fig 29)。
5. Wi-Fi 経由の ssh 接続設定
KUAL と MRPI をインストールしたら、次に Wi-Fi ネットワーク経由で Kindle に ssh ログインできるように構成する。この手順は ssh の設定に関する一般的な説明は省略している。
5.1 USBNetwork のインストール
PC と Kindle を USB ケーブルで接続する。
Snapshots of NiLuJe's hacks [8] から以下のアーカイブファイルをダウンロードして展開する。
USBNetwork Hack: kindle-usbnet-0.22.N-r19297.tar.xz
⇨ PW2 以降の場合はアーカイブ内の Update_usbnet_0.22.N_install_pw2_and_up.bin を、PW 以前の場合は Update_usbnet_0.22.N_install_touch_pw.bin を Kindle ストレージの mrpackages/ ディレクトリにコピーする。
USB ケーブルを取り外す。
KUAL → Helper → Install MR Packages (Fig 30) を選択すると、先ほどコピーした bin ファイルが認識されて USBNetwork Hack のインストールと再起動が始まる (Fig 31)。
再起動後に KUAL → USBNetwork メニューが追加されていることを確認する。
5.2 公開鍵の追加
デフォルトの root パスワードはシリアル番号に基づいて生成されたランダムな文字が設定されていて明らかではないので、公開鍵認証でログインできるように構成する。authorized_keys に追加する公開鍵を準備しておく。
PC と Kindle を再度 USB ケーブルで接続する。ストレージとして認識しないときは USBNetwork が有効になっているので検索ボックスに
;un
と入力して Enter キーを押し有効/無効を切り替える。Kindle 側のストレージの usbnet/etc/authorized_keys ファイルに ssh 接続で使用する公開鍵を追加する。具体的には ~/.ssh/id_ed25519.pub などの公開鍵ファイルの内容を行としてそのまま追加すれば良い。
USB ケーブルを取り外す。
5.3 sshd の起動と接続
KUAL → USBNetwork メニューから Enable SSH at boot, Enable verbose mode, Allow SSH over Wifi, SSHD: Use OpenSSH の 4 つを有効化する (Fig 32, Fig 33)。
Settings → Wireless → Wi-Fi Networks で Wi-Fi の設定を行い Kindle 本体を Wi-Fi ネットワークに接続する。
これ以降、Kindle リスタート時などに起きる Wi-Fi 経由での自動アップデートに十分注意し、自動アップデートが開始されたらすぐに電源ボタンの長押しで中断する。もし自動アップデートが行われてしまった場合はリカバリ方法を参照。
検索ボックスに
;711
と入力して Enter を押すと Wi-Fi 情報が表示される。Kindle 端末に割り当てられている IP アドレスを記録しておく。その IP アドレスを使ってリモート端末から
ssh root@xxx.xxx.xxx.xxx
でログインする。
もし必要であれば、rootfs を書き込み可能にして passwd
コマンドで root のパスワードを変更することで、以後はパスワード認証を使って ssh 接続できるように構成することができる。
[root@kindle root]# mntroot rw
system: I mntroot:def:Making root filesystem writeable
[root@kindle root]# passwd
Changing password for root New password: Retype password: Password for root changed by root
torao@beryl:~$ ssh -o PubkeyAuthentication=no root@100.64.1.114
root@100.64.1.114's password: ################################################# # N O T I C E * N O T I C E * N O T I C E # ################################################# Rootfs is mounted read-only. Invoke mntroot rw to switch back to a writable rootfs. #################################################
[root@kindle root]#
トラブルシューティング
Jailbreak の手順を最初からやり直したい場合や Kindle を元の状態に戻したい場合、以下の手順で工場出荷時の状態にリセットできる。
デモモードが有効化されていて USB ケーブルで PC と接続してもストレージとして認識されない場合、検索ボックスに
;uzb
と入力して Enter を押す (Fig 20)。これでデモモードでもストレージとして認識されるようになる。PC と USB ケーブルで接続して、Kindle 本体のルートディレクトリ直下に
DO_FACTORY_RESTORE
という空のファイルを作成する。メニューまたは電源ボタンの長押しで Kindle をリスタートする。
参照
- Tutorial Open Sesame! (AKA., The New & Improved JailBreak Index)
- Kindle Serial Numbers
- WatchThis - Software Jailbreak for any Kindle <= 5.14.2
- Which Kindle do I have? A quick guide to identifying all of Amazon's e-readers
- How to Downgrade PW 1 ca from 5.6.1.1 to 5.3.3 and maybe PW2
- Jailbreak Kindle Paperwhite 1 with 5.6.1.1
- Kindle Touch/PW1/PW2 5.0.x - 5.4.4.2 JailBreak. Plus FW 5.x USBNetwork.
- Snapshots of NiLuJe's hacks