iOS 10.2 越狱(支持 iOS 10.0.1-iOS 10.2,详情请点击 iOS10 yalu越狱乐动体育app下载 )已经发布,而苹果也早已关闭了 iOS 10.2 固件验证。如果你已经升级到 iOS 10.2.1,那么很遗憾,你暂时所无法越狱或者降级的。而如果你已经是 iOS 9.x 越狱或者处于较低版本的 iOS 10,即使苹果已经关闭了除 10.2.1 外的其他 iOS 10 固件验证,你仍然可以降级|升级到更新的 iOS 10.2 或者任意一个 iOS 10 版本,并越狱。

本教程将一步步展示如何将你的 iOS 设备降级|升级到?iOS 10.2 及任何 iOS 10.x 版本。

本教程以将 iPad Air 从 iOS 9.3.3 升级到 iOS 10.2(已关闭固件验证) 为例,电脑系统为 macOS 10.12.2。

降级|升级条件

? ? 1、设备已越狱,iOS 版本高于(包含)9.1;

? ? 2、备份有效的SHSH2,并且SHSH2文件中包含generator项;

? ? 3、macOS/Linux系统,虚拟机也可以。

软件下载

? ? 1、下载降级软件futurerestore到桌面并解压:官方下载? ? EFreeLife下载

? ? 2、下载降级软件nonceEnabler到桌面并解压:dropbox下载? ? EFreeLife下载

? ? 3、拷贝备份好的 SHSH2 文件到桌面,复制一份,修改后缀名为.plist并打开,记下generator的值,后面会用到。
? ? 4、下载所备份的 SHSH2 对应的固件,亦即所要降级|升级的固件,如iPad_64bit_10.2_14C92_Restore.ipsw。下载地址:iOS固件下载
? ? 5、下载最新的固件,如iPad_64bit_10.2.1_14D27_Restore.ipsw,修改后缀名为.zip,解压后,拷贝下面的文件到桌面:
????? ? (1)?Build?Manifest?.?plist
????? ? (2)?Firmware/all_flash/all?_?flash?.?XXX.?production/sep?-?firmware?.?XXX.RELEASE?.?im4p文件,如sep-firmware.j71.RELEASE.im4p。XXX表示机型芯片,可从?这里?查询。
????? ? (3)?Firmware/XXX.Release?.?bbfw。Firmware下会有多个.bbfw文件,根据你的设备和要降级|升级的固件版本选择正确的文件,如Mav7Mav8-7.21.00.Release.bbfw。
????? ? ? ??MDM9615: iPhone 5s, iPad Air, iPad mini 2, iPad mini 3
????????????????????iOS 10.0.1/10.0.2/10.1(.1): 7.01.00
? ??????????????? ??iOS 10.2: 7.21.00
? ? ? ? ? ??MDM9625: iPhone 6, iPhone 6 Plus, iPhone SE, iPad Air 2, iPad Pro (12.9"), iPad mini 4
? ??????????????? ??iOS 10.0.1/10.0.2: 5.24.00
? ??????????????? ??iOS 10.1(.1): 5.26.00
? ??????????????? ??iOS 10.2: 5.32.00
? ? ? ? ? ??MDM9635: iPhone 6s, iPhone 6s Plus, iPad Pro (9.7")
? ??????????????? ??iOS 10.0.1/10.0.2: 2.30.00
? ??????????????? ??iOS 10.1(.1): 2.36.00
? ??????????????? ??iOS 10.2: 2.41.00
? ? ? ? ? ??MDM9645: iPhone 7
? ??????????????? ??iOS 10.0(.1): 1.00.02
? ??????????????? ??iOS 10.0.2: 1.00.03
? ??????????????? ??iOS 10.0.3: 1.00.05
? ??????????????? ??iOS 10.1 1.02.13
? ??????????????? ??iOS 10.1.1: 1.02.15
? ??????????????? ??iOS 10.2: 1.02.15
? ? ? ? ? ??MDM9645: iPhone 7 Plus
? ??????????????? ??iOS 10.0: 1.00.02
? ??????????????? ??iOS 10.0.1: 1.00.03
? ??????????????? ??iOS 10.0.2: 1.00.04
? ??????????????? ??iOS 10.0.3: 1.00.05
? ??????????????? ??iOS 10.1(.1): 1.25.00
? ??????????????? ??iOS 10.2: 1.33.00
? ? 至此,所有文件准备完毕。在桌面建一个名为?downgrade?的文件夹,将上述文件拷贝进去,应包含:
  • Build?Manifest?.?plist
  • .bbfw文件
  • .im4p文件
  • futurerestore_macos(Linux下为futurerestore_linux)
  • nonceEnabler
  • 所要降级|升级的.ipsw固件文件
  • .shsh2文件以及其中的generator值

系统准备

? ? 要运行降级软件,依赖于Xcode命令行工具和其他依赖包,如果你从未进行过降级操作,则应该先安装这些依赖项。如果你已经安装了,请跳过此步骤。

? ? 1、打开终端,输入?xcode-select --install 并回车。将弹出一个窗口,点击安装(Install),安装提示完成Xcode命令行工具安装。

? ?

????

? ? 2、继续在终端输入:ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"?并回车,安装brew。

? ? 3、安装完brew后,在终端中一行行输入以下命令并回车,保证每条命令都执行无报错(error)。

# 安装依赖包

brew install automake autoconf libtool pkg-config

git clone https://github.com/tihmstar/libirecovery && cd ./libirecovery && bash autogen.sh && make install

git clone https://github.com/tihmstar/libcrippy && cd ./libcrippy && bash autogen.sh && make install

git clone https://github.com/tihmstar/libfragmentzip && cd ./libfragmentzip && bash autogen.sh && make install

git clone https://github.com/tihmstar/libpartialzip && cd ./libpartialzip && bash autogen.sh && make install

# 安装openssl

cd /usr/local

sudo mkdir ssl

sudo chmod 777 /usr/local/ssl

cd

git clone https://github.com/openssl/openssl.git

cd openssl

./config

make

make install

# 安装curl

brew install curl

# 创建链接

brew install openssl

ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/

ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/

ln -s /usr/local/Cellar/openssl/1.0.2j/bin/openssl openssl

开始降级|升级

? ? 1、如果你的设备处于 iOS 9.x 盘古越狱(如果不是跳过这一步),重启设备恢复到未越狱状态。然后使用自带Safari浏览器打开?jbme.qwertyoruiop.com 进行越狱。

? ? 具体越狱步骤为:点击网页上的 GO 按钮 --> 关闭弹出的提示框 --> 按下锁屏按钮等待所越狱完成。

? ? 如果越狱失败,多尝试几次即可。

? ? 此步骤是为了避免运行降级软件时出现?failed to get the kernel base address 错误。如果是 iOS 10.x yalu越狱出现此错误,可尝试使用其他 beta 版本进行越狱。

? ? 2、?如果是 iOS 9.x 版本,请到 Cydia 搜索并安装 openssh。如果是 iOS 10.x 版本,请在 iOS 设备上自行配置好 ssh。

? ? 3、使用 openssh 连接 iOS 设备

  • 打开终端,输入 cd Desktop/downgrade 并回车
  • 输入 ssh root@192.168.1.5 这里IP地址为设备的 IP 地址,请确保你的设备和电脑在同一个Wi-Fi下。
  • 按照提示输入密码(不会显示)并回车。默认密码为:alpine

? ? 4、上传 nonceEnabler 到 iOS 设备

  • 打开一个新的终端,输入?cd Desktop/downgrade?并回车
  • 输入 scp?nonceEnabler root@192.168.1.5 这里的IP同上。
  • 输入密码,等待上传完成。
  • 关闭此终端

? ? 5、最后降级准备

  • 在第一次打开的那个终端中,输入 ./nonceEnabler 并回车,确保执行无误。
  • 输入 nvram com.apple.System.boot-nonce=XXX?并回车。这里的XXX使用前民保存下来的 generator 项的值代替。确保执行成功没有报错(如果执行成功不会显示任何信息)。如果报错请重启设备并重新越狱后,重新使用 openssh 连接 iOS 设备后,重新执行此命令,直到成功为止。
  • 输入 nvram auto-boot=false 并回车。
  • 输入 reboot 并回车,设备将重启并进入恢复模式。
  • 使用数据线将设备连接至电脑。如果弹出 iTunes ,直接关闭。

? ? 6、在打开的终端中,输入 chmod +x?futurerestore_macos 并回车。

? ? 7、输入 ./futurerestore_macos -t XXX.shsh2 -b XXX.Release.bbfw -p BuildManifest.plist -s sep-firmware.XXX.RELEASE.im4p -m?BuildManifest.plist -w XXX.ipsw 并回车。注意:

  • XXX.shsh2?替换为你的 shsh2 文件的文件名。
  • XXX.Release.bbfw?替换为.bbfw文件的文件名。
  • BuildManifest.plist?应该都一样,不变。
  • sep-firmware.XXX.RELEASE.im4p?替换为.im4p文件的文件名。
  • XXX.ipsw?替换为要降级|升级的固件文件的文件名。

????降级过程比较久,请耐心等待。如果出现绿屏则表示成功!此时降级尚未完成,设备将重启一次。重启后将自动打开的 iTunes 关闭,自动继续降级,直到终端显示如下信息才表示降级完成:

Status: Restore Finished

Cleaning up...

DONE

Done: restoring succeeded.


常见问题

? ? 1、如果在最后一步降级命令中,出现 Library not loaded: /opt/local/lib/XXX.dylib 的错误,说明依然缺少依赖包,执行 brew install XXX 来安装依赖包即可。

? ? 2、如果在最后一步降级命令中,出现以下错误:

Assertion failed: (data), function plist_copy_node, file plist.c, line 323.


????这是因为你的 shsh2 备份有误,基带版本不对导致的。如果你是 iPad Wi-Fi 版或者 iPod,则只需要在最后一条命令后面加上 --no-baseband 参数即可。此时命令将变为:./futurerestore_macos -t XXX.shsh2 -b XXX.Release.bbfw -p BuildManifest.plist -s sep-firmware.XXX.RELEASE.im4p -m?BuildManifest.plist -w XXX.ipsw?--no-baseband

? ? 使用这个参数将不会进行基带升级,所以对于需要升级基带的 iOS 设备,如 iPhone、iPad 蜂窝网络版等,可能导致降级失败。对于这些设备只能用正确的 shsh2 文件才能进行降级。