正文
方法A
1.在桌面上建立一个叫“Downgrade”的文件夹来存放所有降级需要的文件。这样能使你的操作更加便捷。
2.将iOS10.2和iOS10.2.1的.ipsw文件下载至“Downgrade”文件夹。确定你选择了对应设备版本的.ipsw。
3.下载最新版本的futurerestore并保存至“Downgrade”文件夹。解压.zip压缩包并将其中“futurerestore_macos”文件剪切到“Downgrade”文件夹。之后你可以删除.zip文件及其它解压出的文件。
4.当iOS10.2.1的.ipsw文件下载完成后,右键重命名,在文件名后加“.zip”,将其变成一个.zip文件。在弹窗中确认选择.zip。
5.双击这个.zip文件来解压。你需要从中获取到2或3个文件。它们分别是:“BuildManifest.plist”,基带.bbfw文件和SEP文件。
(1)获取BuildManifest.plist
该文件位于解压后的根目录下。将其复制到“Downgrade”文件夹。
(2)获取基带.bbfw文件(仅用于Cellular机型)
获取基带文件略显复杂。该文件位于/Frimware文件夹下。取决于下载的.ipsw文件的不同,可能存在多个基带文件。加入确实存在这种情况,你需要确认哪一个是正确的文件。你可以参照下表来确定。
举个例子,如果你的设备是iPhone 6 Plus,那么基带版本应该是5.32.00。所以说,基带文件应该是命名为‘Mav10-5.32.00.Release.bbfw’。当你获得了正确的基带文件,将它复制到‘Downgrade’文件夹。确定你所复制的是.bbfw文件而非.plist文件。
(3)获取SEP文件
和基带文件相似,一个.ipsw文件中可能有多个SEP文件。你需要获得正确的SEP文件否则降级不会成功。你需要获得设备的Board Configuration来继续操作。你可以在设备的App Store中下载“Battery Memory System Status Monitor”。安装后,在System选项卡中,第一项Model便是Board Configuration(如N59AP)。.sep文件位于/Frimware/all_flash/all_flash.<Board Configuration>.production。举个例子,如果你的Board Configuration是N56AP,那么SEP文件应位于‘Firmware/all_flash/all_flash.n56ap.production’。在这里你应该找到一个文件名开头是“sep-firmware”的后缀名为.im4p的文件。当你获得了正确的文件,将它复制到‘Downgrade’文件夹。确定你所复制的是.im4p文件而非.plist文件。
6.确保你的设备是iOS9.0-iOS9.2系统且已用Yalu越狱。
7.找到你的iOS10.2的SHSH2验证文件,将其剪切到“Downgrade”文件夹。下一步你要做的是,从中提取到需要写入设备的generator。右键.shsh2文件,选择“用…打开”-“其它”。在弹窗中选择文本编辑器(如TextEdit)。
8.滚动到文件底部,找到关键字“generator”,其值为字符串。复制其值并保存到其它地方,或者保持文件打开着。
9.在想要降级的设备上打开Cydia,安装插件“OpenSSH”。你可以很容易地搜索到它。
10.在Mac上安装Python。(如果你已经安装过了,你可以跳过此步。)
11.因为Yalu越狱只允许SSH运行在USB上而非Wi-Fi上,所以你需要运行一段Python代码来在USB上运行SSH。下载“iPhoneSSH”并将其保存到“Downgrade”文件夹。解压“master.zip”文件,在“python-client”文件夹中找到3个文件,将它们全部移动到“Downgrade”文件夹。这个时候你可以删除“master.zip”及其它解压出的文件。
12.运行“Terminal”应用。你可以在Spotlight搜索中亦或者在Launchpad中打开它。启动这个程序后,你需要改变它的路径到“tcprelay.py”的位置。输入的指令是:
cd <“tcprelay.py”的位置>
举个例子:
cd /users/Josh/Desktop/Downgrade/
之后为了运行Python代码,输入指令:
./tcprelay.py -t 22:2222
当代码开始运行后,你只需要最小化窗口,保持它运行在后台。
13.确认你的设备已通过USB接口插入计算机,确认你已打开iTunes且设备已信任此计算机。打开一个新的Terminal窗口,输入指令:
ssh root
@127.0.0.1 -p 2222
假如一切正常的话,你应该被请求输入“yes”确认连接。在Terminal里键入“yes”,你应该被请求输入密码。此时你应该输入密码“alpine
”(不用担心你在屏幕上看不见你输入的是什么,你仍然在输入)。回车后,你就成功建立了设备的SSH连接。
14.现在你需要添加SHSH2的Generator到你的设备,在SSH的Terminal内输入指令:
nvram com.apple.System.boot-nonce=<Generator>
举个例子:
nvram com.apple.System.boot-nonce=0x62e1e2495d654857
确保你所输入的和上述格式完全相同,包括字母的大小写。
15.现在你需要令文件“futurerestore_macos”可用,这样他就能够在Terminal中使用。打开一个新的Terminal,并且改变它的路径到Downgrade文件夹(见第10步)。输入的指令是:
chmod +x futurerestore_macos
假如你的操作无误,你应该看到改文件的图标变为Terminal的图标。
16.现在我们能够真正开始降级了。在上一个Terminal中输入以下指令:
./futurerestore_macos -t <iOS 10.2的SHSH2验证> -b <基带文件> -p BuildManifest.plist -s <SEP文件> -m BuildManifest.plist -w <iOS 10.2的.ipsw文件>
举个例子:
./futurerestore_macos -t 7850667594858382_iPhone8,1_n71map_10.2-14C92.shsh2 -b Mav13-2.41.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n71m.RELEASE.im4p-m BuildManifest.plist -w iPhone_4.7_10.2_14C92_Restore.ipsw
注意:假如你是用的设备是不需要基带文件的非Cellular设备,那么去掉-b <基带文件> -p BuildManifest.plist 指令,并在最后添加如下指令:--no-baseband。
17.如果一切正常,而且你的iOS10.2的SHSH2验证文件有效,你的设备应当开始恢复到iOS10.2。确保设备与计算机的连接不中断,且中途不要关闭Terminal。如果你如此做了,那么你可能会强迫恢复到iOS9.2.1而且以后再也无法使用这种方法。




