通用 Kindle 固件降级教程:支持所有已越狱 Kindle 设备
之前书伴曾在《Kindle 固件降级教程:支持部分已越狱 Kindle 设备》这篇文章中介绍过一种将 Kindle 降级到低版本固件的方法,但是仅适用于部分已越狱的 Kindle 设备,有的需要额外安装急救包插件,有的需要使用特制固件才能降级,而对于型号更新的 Kindle 设备如 Kindle Oasis 3 和 Kindle Paperwhite 5,既不能安装急救包插件也没有适用的特制固件的,就无法降级了。
小伙伴 xwcoco 在书伴的留言区提供了一个好消息,MobileRead 论坛的网友 katadelos 发现了一种新的降级方法[1],只要你的 Kindle 已经成功越狱,通过简单的修改 Kindle 系统中的一个文件,即可直接使用低版本的官方固件进行降级,无需额外安装插件,也不需要使用特制固件。
目前已验证的通过本文提供的方法成功降级的 Kindle 设备型号有 Kindle Paperwhite 5(含 Signature 版)、Kindle Paperwhite 4(书伴自测)、Kindle Paperwhite 3、Kindle Oasis 3、Kindle Oasis 2、Kindle Voyage、Kindle 8。如果你的 Kindle 设备也验证了此方法,欢迎留言反馈。
【 风险提示 】有小伙伴反馈(1,2),按照本文提供的方法为 Kindle Oasis 3(KO3)降级后,出现了无法正常启动的情况,这表明本文提供的方法存在一定的风险,请谨慎使用。
一、降级原理
Kindle 系统中存在一个名为 /etc/version.txt 的文件,其内容中含有“系统软件版本”,Kindle 设备的固件升级程序会将待更新固件的版本与这个版本进行比对,如果要更新的版本大于等于这个版本就允许更新,否则就拒绝。因此,我们可以通过将文本文件中的“系统软件版本”替换成比当前固件版本更小的“系统软件版本”,以达到欺骗固件升级程序、实现降级固件的目的。
那该怎么获取比 Kindle 设备当前固件版本更小的“系统软件版本”呢?亚马逊为每一个公开发布的 Kindle 固件提供了源代码压缩包,其文件名除了带有固件版本号,还带有一串数字(内部版本号),这一串数字与文本文件中“系统软件版本”的数字是一一对应的,只是存在形式上的差异,我们可以通过简单的规则就可以将其转换成 Kindle 升级程序所需要的“系统软件版本”。
通过 SSH 登录 Kindle 系统,打开文件 /etc/version.txt 可看到类似如下所示的内容:
System Software Version: 059-juno_1402_moonshine_rex-380714
Tue Feb 1 02:50:02 UTC 2022
com.lab126.eink.moonshine.os
找出第一行“System Software Version”(这也就是前面所提到的“系统软件版本”)后面那一串由横杠分割成三部分的字符,取出第一部分数字和最后一部分数字,比如上面这个示例中的 059 和 380714,将其按照这样一种规则 380714 + 0 + 059 重新拼接成这样一组数字 3807140059。
然后前往 亚马逊 Kindle 设备固件源代码页面,利用网页浏览器的页面查找功能搜索组合后的数值,就可以找到与 Kindle 设备当前固件相对应的源代码压缩包文件,该压缩包中的固件版本号也与 Kindle 当前固件版本号一致,比如本例是 Kindle_src_5.14.2_3807140059.tar.gz。
根据这个规律,我们可以反其道而行,先确定要降级的固件版本,然后找到与该版本固件相对应的源代码压缩包,并通过文件名中的数字重新组合成固件升级程序所需要的“系统软件版本”。
假设,想要将已越狱的当前版本号为 5.14.3.0.1 的 Kindle Paperwhie 4 降级到 5.13.3 版本固件,可以先找相应的源代码压缩文件的文件名 Kindle_src_5.13.3_3676000033.tar.gz,取出里面的 3676000033 这一串数字,将其拆分成 033 和 367600,替换 /etc/version.txt 中“System Software Version”后面那一串字符的第一部分数字和最后一部分数字,替换后的内容如下所示:
System Software Version: 033-juno_1402_moonshine_rex-367600
Tue Feb 1 02:50:02 UTC 2022
com.lab126.eink.moonshine.os
最后就可以下载 5.13.3 版本的官方固件,按照常规手动升级官方固件的方式进行降级了。
二、降级步骤
在开始下面的步骤之前,需要确保你的 Kindle 已经成功越狱。如果你的 Kindle 设备还未越狱,可参考《Kindle 越狱支持一览:检查 Kindle 设备能否越狱》这篇文章检查自己的 Kindle 设备是否满足越狱条件,若满足条件,可根据页面中提供的相关文章完成越狱再进行下面的步骤。
方法一:适用于能够运行 ;log
命令
为了简化操作,书伴将涉及修改 Kindle 系统文件的操作写成了自动化的 Shell 脚本,免除了手动登录 Kindle 系统及修改相关文件的繁琐步骤。你可以遵循以下步骤方便快捷地降级固件:
- 使用下方的选项菜单选择你的 Kindle 设备型号,在出现的列表中确定要降级的固件版本;
- 将与固件版本相对应的 Shell 脚本文件“RUNME.sh”和“官方固件”文件下载到本地;
- 用 USB 数据线将 Kindle 设备连接至电脑,将“RUNME.sh”拷贝到 Kindle 根目录;
- 弹出磁盘,在 Kindle 的搜索框中输入
;log runme
并按回车,自动修改“系统软件版本”; - 再次用 USB 数据线将 Kindle 设备连接至电脑,将“官方固件”文件拷贝到 Kindle 根目录。
- 弹出磁盘,进入 Kindle 界面,依次点击菜单【设置 → 设备选项 → 重启】或【设置 → 设备选项 → 高级选项 → 重启】重启 Kindle(或长按 Kindle 按钮重启),并完成自动降级。
如果降级后出现某些功能不正常的情况,可备份一下数据,重置一次 Kindle。
* 提示:脚本会将原始的 /etc/version.txt 文件备份到你的 Kindle 根目录,如不需要可以删除。
下载官方固件时,如果无法通过点击官方下载链接直接下载,可以尝试使用迅雷等下载工具下载。或者前往“固件大全”页面,通过书伴提供的百度网盘链接下载。
选择固件版本的时候请注意,由于亚马逊曾经强制升级过老型号 Kindle 设备的固件,太老的固件版本会影响亚马逊网络服务的使用,因此,如果你在降级固件后仍想登录亚马逊账号、使用 Kindle 商店以及 Kindle 个人文档服务,建议使用 5.6.x 及更新版本的固件文件。
方法二:适用于无法运行 ;log
命令
此方法为网友 Give5946 投稿(原文),通过重启 Kindle 执行急救脚本修改版本号的方式让 Kindle 支持固件降级。如果你无法运行 RUNME.me 脚本可以尝试此方法。
事情是这样的:我买了一个 Kindle,并把它越狱了。然后我打开了WiFi(我犯了个错,以为越狱会关闭自动更新),亚马逊在没有提示的情况下将它升级到了 5.16.4。除了我在启动时仍然有“**** JAILBREAK ****”消息外,其他都不起作用。
以下是我恢复越狱的方法(基于 mergen3107 11-22-2023 #484)
在此处下载 NiLuJe 的 K5 越狱包,提取 emergency-bridge-recovery.zip 文件。
解压缩,编辑 emergency.sh,在文件的末尾,您应该找到以下几行:
# Bye
sync
mntroot ro
就在这些行之前添加这个(感谢 Marek):
# Patch version
VER=336034
cp /etc/version.txt /mnt/us/version.txt.backup
sed -i -E "1 s/(-)([0-9]+)$/\1${VER}/g" "/etc/version.txt"
将这些文件复制到 Kindle 的根目录:
bridge.conf
bridge.sh
emergency.sh
RUNME.sh
重新启动 kindle。这些文件通常会消失,并会出现 /mnt/us/version.txt.backup 文件。现在您可以将固件降级到适用于越狱的版本(比如 5.16.2.1.1),Kindle 将接受以前的固件。 降级后,你的系统会有点混乱,因此请恢复出厂设置。你现在有一个全新的系统,准备再次越狱吧!
四、常见问答
如果你在降级的过程中遇到如下所示的问题,可尝试给出的解决方案。
1、降级后白屏怎么办?
如果在白屏的状态下,通过 USB 数据线将 Kindle 连电脑可以出现磁盘,备份重要的文件,可以在 Kindle 根目录创建一个名为 DO_FACTORY_RESTORE 的空文件(不带扩展名),按 Kindle 的按钮 40 秒重启,Kindle 会自动恢复出厂设置,一般情况下可解决白屏的问题。
2、如何禁止自动更新?
禁止自动更新体可参考《如何禁止 Kindle 自动更新(四招阻止固件升级)》这篇文章。
3、如何恢复越狱插件?
降级固件后,一般情况下不需要重新越狱,但是需要用 ;log
命令重新安装失效的插件。如果发现插件无法正常安装,重新安装一遍最新版 hotfix 修复一下越狱即可恢复正常。恢复越狱和插件的具体步骤可参考《Kindle 升降级固件或重置后如何恢复越狱和插件》这篇文章。
© 「书伴」原创文章,转载请注明出处及原文链接:https://bookfere.com/post/979.html
延伸阅读
- Kindle 升级 5.12.2 固件后如何恢复越狱的 ;log 命令
- [每周一书]《规模》用宏观思维看世界变化
- [每周一书]《你当像鸟飞往你的山》一个关于教育的故事
- 读书从娃娃抓起:亚马逊推出儿童版 Kindle
- 苹果公司人物传记:史蒂夫·乔布斯及他的小伙伴们
- [2021.03.15] Kindle 7 & KPW2 固件升级至 5.12.2.1.1
- 如何用 Mobi Metadata Editor 修改 Kindle 电子书元数据
- [每周一书]《源泉》寻求生命的路标
- 三二一!Sherry 精选英文分阶阅读系列(六)
- 亚马逊青春版 Kindle(2019)评测视频总汇
- [每周一书] 现实版的“一九八四”《被禁锢的头脑》
- [每周一书] 深入剖析《人类活动中的理性》
- Kindle Voyage 阅读器深度评测(四):软件功能
- [每周一书]《优秀的绵羊》精英教育的劣势
- 亚马逊 Kindle 个人文档服务已原生支持推送 EPUB 格式
请问一下 kindle 11 – 5.17.1 怎么降级呢?
在 “二、降级步骤” 没有找到合适的 runme.sh
请求解答:
kpw5版本5.16.2.1.1想要降级到5.14.2或5.14.1.1无法降级,提示无效文件。
运行;log自动化脚本一切正常。但是可以降级到5.14.3.0.1,再往下降级试了多次都无法降级了。
是什么原因呢,谢谢
按照方法2操作,根本就不出现那个文件啊,原来4个文件也没有删除,是不是我版本5.16.8不能用这个方法?
OA1.自动升级后,通过该方向,逐固件降级,已从5.16.2.1(最新)降到5.14.1
5.16.2.1版本时候尝试越狱出现了炸弹的图标,也不知道有没有成功…可以降级吗