『WEIP技术组』白苹果自救修复教程前言:目前有很多小白和喜欢折腾的锋友在新出一个程序后喜欢尝鲜,或者某些程序的BUG导致了白苹果,甚至部分机器反复重启,根本无法联机,导致很多没有及时备份的数据丢失,经常听到有些人抱怨到我宁愿不要这台机器了也要把数据救出来(哈哈,反正我是没碰到这种好事),确实有些数据比机器价值更高!!!为了挽救这些水深火热的锋友,我特地写了这篇自救教程,不能说全部能够救活,但是一般因为安装,升级程序导致的故障基本能够通过此方法修复,如果觉得好,欢迎转载,但是请注明出处原作者:CDSQ,特别谢绝91转载和部分对我有人身攻击的XX阅读本教材第一章:原理篇首先,我们必须先了解苹果的i设备的启动部分涉及到的地方1---设备自身启动时调用的文件全部是在//System/Library/LaunchDaemons目录下,全部为plist后缀的文件,这些plist文件引导系统去调用主程序目录下的执行程序2---越狱的设备一般会安装一个依赖程序:mobilesubstrate,当其安装后,部分依附于他的启动时调用的程序一般位于//Library/MobileSubstrate/DynamicLibraries目录下,且一般为2个配对的文件,一个是p list后缀名的,一个是dylib后缀名的,dylib后缀名的就是启动执行程序3---还有一个文件和启动有关系的很重要的文件://System/Library/LaunchDaemons/com.apple.Sprin gBoard.plist, MobileSubstrate程序的启动就是靠它调用的,它还会调用其它的一些程序的,SpringBo ard.plist里面关于启动的都在<key>DYLD_INSERT_LIBRARIES</key>这个键值下面,比如:<key>DYLD_INSERT_LIBRARIES</key><string>/Library/MobileSubstrate/MobileSubstrate.dylib</string>由此可以看到这是一个"比较"纯净的调用,只调用了一个程序,但是有些其它的程序会唉这里添加启动,比如91的部分程序,原来我出过的白苹果修复程序就在这里修改了的,把这个键值的调用全部清空那么我们怎样去处理白苹果的机器呢?其实说穿了很简单,但是有一个前提条件就是你必须大概知道你是因为安装了哪个程序后导致白苹果.甚至不联机的!!!解决的方法就是想办法让有问题的程序不能运行(为什么不是删除或是卸载,其实和工具以及机器的状态有关,当我们不能操作机器时,我们是不能单独修改或是执行命令来卸载的)第二章:工具篇我们修复白苹果主要用到2个程序,一个就是大家越狱用的红雪,我们就是要利用红雪的"安装自定义压缩包文件"功能来实现错误文件的修改另外一个就是7-zip,目前WINDOWS下,只有它处理的压缩格式最多,我们就是要用它来处理压缩包,实际上为了方便和简洁,我采取的是直接利用7-ZIP直接处理问题程序的安装文件来达到目的的老版的7-ZIP下载(其实新版的真的不好用):7-Zip 4.64 Final.rar(901 K) 下载次数:342第三章:解决思路因为红雪的"安装自定义压缩包"所要求的压缩包格式为:压缩的gzip格式文件,后缀名为*.tgz;*.tar.gz,而安装程序的格式为DEB格式,我们可以使用7-ZIP从DEB压缩包里面提取标准的data.tar.gz文件,然后对其进行修改!第四章:解决例子及过程(以iAcces为例,因为它是一个和启动相关的2个地方都有调用的典型程序)第一节:修复包制作1,首先,用7-ZIP打开DEB安装程序,我们可以看到里面有2个tar.gz的包: control.tar.g z 和data.tar.gz,其中: control.tar.gz是DEB安装程序的信息和安装脚本文件;data.tar.gz 为程序体,那么我们就把data.tar.gz先行提取出来:如下图:2,用7-ZIP将刚刚提取的data.tar.gz压缩包打开看到一个data.tar的压缩包,直接双击,不要提取,如果双击后出来2个目录:一个双点,一个单点目录的话,请双击单点目录,这是我们就会看到主文件了,你会发现它的目录结构实际上和i设备的目录结果一样,如图:3, 根据第一章我所讲解的原理,我们只需要修改启动相关的文件,为了节约空间及压缩包的大小(安装自定义压缩包的包不能太大< 15M,否则容易出错),我们把和启动无关的文件删除(选中后右键选择删除),仅暂时保留/System/Library/LaunchDaemons和/Library/MobileSubstrate/DynamicLibraries 2个目录和目录下的文件,其余全部删除!(双击双点目录是返回上一级目录),最后本例子程序就剩下3个文件,如图:4,那么我们怎么修改程序让它不运行呢?其实很简单,执行程序我们可以直接新建一个空白文本,并且将这个空白文本的文件名包括后缀名用要替换的执行程序的名字替换,这样我们就有一个0字节的"执行文件"了,系统在调用时肯定是不能运行直接跳过了,那么就达到绕开错误程序的目的,那么那个plist文件怎么处理呢?可以下载我下面附件里面的一个空白的plist模板,把它的名字改为对应你要替换的plist的名字(其实只要把执行程序修改跳过就行了,但是怕这2个plist文件会调用系统部分的程序,保险起见,用空白的替换)如图:空白plist模板下载: demo.rar (1 K) 下载次数:1765,将刚刚做好的"假文件" 拖动到压缩包对应的目录将包内的文件替换掉,然后关闭压缩包,这时会提示文件已修改,是否更新,选择"是",修复包就完成了.如图:第二节:修复包的写入红雪0.9.6rc16中文版下载请移步: /read-htm-tid-2135876.html 1,打开红雪,选择好相应的官方固件以后,进入越狱选项菜单,将CYDIA安装的勾去掉,其它的全部清除,然后勾选"安装自定义压缩包",弹出选择菜单后选择刚刚做好的修复包,然后点击下一步,后续的工作就和越狱一样,我就偷个懒,不写了!!!^_^ 界面如下图:写入完成后,等待机器进入熟悉的桌面吧!!! NONO,还没完,进入系统以后,把你出错的程序卸载吧,别忘记了!!!还有几个小东西先睡觉去,起来再传,又TMD熬了一夜,谢谢观赏,886。