IOS9降级至IOS8.4.1 附降级工具OdysseusOTA 2

2015年10月25日 发表评论 阅读评论

IOS9挂出已经有一个多月,不过根据网上的大多数人的回复来看,槽点不少。而且在一些老旧设备上运行缓慢卡顿,在九月份的时候,如果当时后悔还可以通过itunes恢复或SFU方式恢复至老版本。不过当前由于苹果已关闭该版本刷机验证,再使用该方法时,会提示不支持该版本刷机或报3194的错误。不过使用OdysseusOTA 2工具可以将iPhone 5、iPhone 5c、iPhone 4s、iPad 3 和 iPad 2用户的IOS版本降级到8.4.1 。

一、刷机条件

1、手机需先越狱(后面会使用CYDIA第三方商店安装OpenSSH和Core Utilities );

2、下载odysseusOTA2工具包:google drive下载(需翻墙)    百度云下载 (提取密码: 2z7t);

3、一台linux主机或mac 主机 ;

4、8.4.1.ipsw固件

odysseusOTA2工具包,从视频文字上来看,应该是德国程序员发明的,开发者对其工作原理的解释是:“这之所以能够成功,是因为苹果官方没有关闭IOS8.4.1的OTA验证,而我们拥有“钥匙”,不过该方法并不适用于其它 iOS 版本”。

二、刷机方法

这里手机越狱的方法不再提供,因为国内支持一键越狱功能的软件太多,这里重点提下OdysseusOTA 2 的使用方法。操作步骤在OdysseusOTA 2 的README.txt中,操作之前可以先看下如下视频:

全屏播放 (由于当前主题问题无法全屏,可以连接该链接全屏查看)

README.txt中提供的步骤如下:

#build custom ipsw --> 生成自制固件
./ipsw path_to_original_8.4.1_restore.ipsw custom_downgrade.ipsw -bbupdate
#DO NOT FORGET -bbupdate   !!!!!!
#download shsh blobs  -->生成shsh文件
./idevicerestore -t custom_downgrade.ipsw
#extract pwnediBSS  -->提取pwnediBSS
./xpwntool `unzip -j custom_downgrade.ipsw 'Firmware/dfu/iBSS*' | awk '/inflating/{print $2}'` pwnediBSS
#copy files to device    -->向设备复制文件,可以通过设置->无线局域网(Wi-Fi)查看手机IP
scp pwnediBSS ../kloader root@IP_OF_DEVICE:  -->scp的时候不要忘记设备IP最后的冒号
#dont forget the „:“ here ————————————————^
#default ssh password is „alpine“  -->ssh默认密码为alpine
#ssh to the device
ssh root@IP_OF_DEVICE
#run kloader (on device via ssh)  -->此时手机屏幕会变黑,手机进入DFU模式
./kloader pwnediBSS
#when your device’s screen turn’s black, open a new tab/terminal and close the current one with the ssh session
#now back on the computer run the restore  -->生成的ipsw包写入,并开始刷机
./idevicerestore -w ./custom_downgrade.ipsw
Done 🙂

最后一步需要注意,如果执行时提示没有发现设备的话,那你观察一下你的手机屏幕是不是黑的,按一下home键看看可有反应(不要按电源键),
可能你按一下home键就成功进入DFU了,此时再执行下最后一步。

三、问题难点

1、并不是所有版本的8.4.1的固件都支持的,其只支持iPhone5,1_8.4.1_12H321、iPhone5,2_8.4.1_12H321两个版本的固件,我确认下了就是iphone5 下的两个固件,不过可以支持刷给5C ,官方提供的5C版本的固件是iPhone5,3_8.4.1_12H321、iPhone5,4_8.4.1_12H321 。

2、需要安装大量lib库依赖

由于用惯了在linux下操作,我使用是centos7环境,默认执行时会出现会缺少很多lib库文件,比较麻烦的是打这些缺少的lib包,如下:

[root@361way linux64]# ldd ./ipsw
        linux-vdso.so.1 =>  (0x00007ffe22ffe000)
        libz.so.1 => /lib64/libz.so.1 (0x00007f470e907000)
        libcrypto.so.1.0.0 => not found
        libbz2.so.1.0 => not found
        libpng12.so.0 => not found
        libc.so.6 => /lib64/libc.so.6 (0x00007f470e544000)
[root@361way linux64]# ldd ./idevicerestore
./idevicerestore: /lib64/libcurl.so.4: no version information available (required by ./idevicerestore)
        linux-vdso.so.1 =>  (0x00007ffe7b1fe000)
        libirecovery.so.2 => not found
        libimobiledevice.so.4 => /lib64/libimobiledevice.so.4 (0x00007f42aa1b4000)
        libplist.so.3 => not found
        libzip.so.2 => not found
        libz.so.1 => /lib64/libz.so.1 (0x00007f42a9f9d000)
        libcrypto.so.1.0.0 => not found
        libcurl.so.4 => /lib64/libcurl.so.4 (0x00007f42a9d38000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f42a9b1b000)
        ……………………省略
[root@361way linux64]# ldd ./xpwntool
        linux-vdso.so.1 =>  (0x00007fffe1995000)
        libz.so.1 => /lib64/libz.so.1 (0x00007f88823c5000)
        libcrypto.so.1.0.0 => not found
        libpng12.so.0 => not found
        libc.so.6 => /lib64/libc.so.6 (0x00007f8882003000)
[root@361way linux64]# pwd
/root/odysseusOTA2/linux64

上面的包可以通过第三方源安装一部分,另外一步分找不到的就需要手动编译后,链接到/lib64目录下。尤其是github有一个跨平台的项目libimobiledevice 的包需要安装 ,在mac 下该步应该可以省略---毕竟都是apple公司自家的东西,在mac中默认会有libmobiledevice这块的驱动和lib包支持。

ipsw

四、最后

对于iOS设备来说,往往都是升级容易降级难。使用老设备的用户尽量不要像我手欠尝新,完了又尝试各种方法退回去,因为IOS很多时候刷不好就会被刷成砖头。最后还是要提示下,刷机有风险,操作需谨慎。




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

分类: Linux/unix/mac, 杂七杂八 标签:
  1. 2015年11月3日13:59 | #1

    我比较喜欢用最新的系统,不过最新ios的电话拦截是一个问题。

  1. 本文目前尚无任何 trackbacks 和 pingbacks.