CDSQ

威锋技术组CDSQ的博客,主要是将一些好的有用的,尤其是我原创的文章做个汇总吧,偶尔写写心情!新浪微博:CDSQ

iOS 9.2~9.3.3 越狱的正确抹机步骤以及注意事项

iOS 9.2~9.3.3 越狱的正确抹机步骤以及注意事项

严禁以任何形式的分享,转载!如需转载请付费!!!

(本人写东西喜欢说原理所以有点繁琐,希望你们仔细阅读)

需使用的工具下载:

WinSCP :威锋技术组服务器直接下载

第三方助手工具 (i-Funbox 或者 PP助手或 iTools )

iOS 9.2-9.3.3 越狱后抹除时被删除缺失的/var/lib 和 /var/log/apt 原始文件夹备份:威锋技术组服务器直接下载

首先还是来谈谈关于这篇长文的整个原理

系统区空间不足的 Cydia 处理方式

        越狱程序在越狱后会占用一部分系统分区空间(一般除了 /var 文件夹以外的都属系统区空间),而 iOS 在恢复(重做) 系统的系统区空间分配是按照设备硬盘的整体容量大小的百分比而不是固定空间大小来分配的,那么如果设备是16G甚至8G的系统盘区域分配的大小就基本上很小很小了,这样当安装第三方系统应用或插件时如果需要安装到系统区就会导致空间不足!

        为了解决系统区空间不足的问题,Cydia 的开发者大胡子(Jay Freeman) 制作了一个脚本,在 Cydia 启动时检查指定的几个文件夹,如果没有搬移就会执行搬移指令来搬移部分系统文件达到释放系统区占用释放的目的(将指定的系统文件搬移到 /var/db/stash 目录下,并在原位置创建一个同名的快链)

一般搬移的对象主要是:

Applications    原位置为:/Applications

Ringtones       原位置为:/Library/Ringtones

Wallpaper       原位置为:/Library/Wallpaper

pam                原位置为:/usr/lib/pam

share              原位置为:/usr/share

include           原位置为:/usr/include

当然还有以后安装的手势动作和主题等扩充库 等

Activator         原位置为:/Library/Activator

Flipswitch       原位置为:/Library/Flipswitch

Switches        原位置为:/Library/Switches

Themes         原位置为:/Library/Themes

Zeppelin        原位置为:/Library/Zeppelin


  移除 Cydia 搬移的部分系统文件 

        这些本来应该位于系统分区的文件将会被统一搬移到用户区的 /var/stash 目录下,当然因为 var 目录实际上也是一个快链文件夹,实际指向的真实目录为: /private/var/stash 目录 (Cydia 更新到1.1.16后为解决恢复iTunes备份恢复后设置密码白苹果的问题,将此位置移动到 /var/db/stash 了!)

        在 /var/db/stash 目录下我们可以看到有很多随机文件夹以及和文件夹同名的 lnk 文件,里面就是搬移的系统文件夹真身,外面的同名 lnk 文件其实就算是一个备注,用文本编辑器打开可以看到真实路径

        值得注意的就是,在新版盘古越狱,我们会在系统 root 的根目录看到一个 “.cydia_no_stash” 的文件,这个文件实际上就是 Cydia  用来判断在启动时要不要检查并搬移系统文件的一个标识触发文件,从字面意思就可以看出当有这个文件时,Cydia 就不会去检查和搬移系统文件,如果没有就会调用检查搬移脚本!

越狱设备为啥不能 “抹掉所有内容和设置”

        首先吐槽一下,我经常说当你在更新系统版本和恢复 iTunes 备份的资料后一定要在 设置-通用-还原-还原所有设置 来初始化系统设置,这样设备的稳定性就会大大提高,但是有诶唱多的人就想当然的说:越狱设备不是不能还原吗?还原会白苹果,资料丢失!拜托你们不要想当然好吗!!!!

        “还原所有设置”不等于“抹掉所有内容和设置”!!!前者是用来删除你对设备的运行参数所做的一些设置来恢复到系统默认的参数,而后者才是把所有用户数据和系统生成的变量配置删除的命令(以前好像就是叫:还原并抹除内容,现在改了一个叫法估计也是被这种想当然搞烦了,哈哈哈!

那么问题来了,为什么在一般人印象里面为什么越狱的设备在抹除后为啥就会白苹果呢,看下面!

越狱设备抹除后白苹果或者桌面图标全无的原因

        当我们在点击 设置-通用-还原-“抹掉所有内容和设置” 按钮时,iOS 会调用命令,将 /var 目录下的除了指定的白名单以外的全部数据清理删除 来达到重置为未激活的新设备状态。

        前面说了 Cydia 在第一次运行时,为了释放系统空间,会将部分系统文件搬移到 /var/db/stash  文件夹,而这个 /var/db/stash 文件夹不在系统白名单内,所以在你抹除时会被删除,删除以后只剩下原位置的一个失效的快链文件,桌面的程序当然就会不见甚至白苹果!!!

        同理,如果 Cydia 没有做搬移释放空间的操作,那么不管你什么版本的越狱机器一般都是可以抹除的并不会白苹果,我之前多次说过甚至做过教程,好像还有发过视频!

好了,前面的原理基本上就讲差不多了,开始讲 iOS 9.2~9.3.3 越狱的注意事项以及正确抹机步骤!

iOS 9.2~9.3.3 越狱的注意事项以及小容量设备系统区空间不足的解决

        首先我们按正常方式越狱,越狱完成后第一时间在 Cydia 里面安装 OpenSSH(安装 OpenSSH 的目的就是可以在PC上远程执行 iOS 系统上的命令,修改权限等) ,安装 OpenSSH 服务后为了安全起见,我们可以修改系统默认的密码:alpine ;可以添加 威锋技术组精品源:http://repo.feng.com 安装 “SSH 登录密码修改” 应用来更改原始密码(有root和mobile2个账户,可一并修改,有些人在输入更改的密码点了2次更改,然后跳出密码错误就开始吐槽有问题,我实在是无语,有问题的是脑子)

  移除 点击此处添加图片说明文字 

      OpenSSH 服务安装好以后,我们就可以使用 WinSCP 客户端程序来登录设备了,登录的方式有2种,一种是利用工具将和电脑数据线联机的iOS设备端口映射为本地端口(也叫:USB隧道;打开SSH通道等),第二种就是电脑和手机在一个局域网段,使用iOS设备的WiFi地址登录,登录界面如下:

  移除 点击此处添加图片说明文字 

iOS 9.2~9.3.3 越狱小容量设备系统区空间不足的解决

        本次 iOS 9.2~9.3.3 的盘古越狱因为 Apple 的加密问题以及漏洞缺少和未来越狱新方向的考虑,在越狱后特意在 root 根目录放置了一个 .cydia_no_stash 禁止 Cydia 搬移文件的标识文件来注销搬移系统文件功能,那么有很多小容量(主要是16G)设备)就会频繁地报系统空间不足的提示!

        最新版的 Cydia Substrate 已经将原先默认安装在 /Library 目录下的 CS 环境插件主程序搬移到  /var/db/stash 文件夹下了!原位置为:/Library/MobileSubstrate/DynamicLibraries

        虽然 CoolStar 写了一个搬移脚本用来搬移部分系统文件,或者手动搬移,甚至可以直接删除或改名根目录的 .cydia_no_stash 文件来让 Cydia 自行搬移,但是我测试基本上或多或少导致一些问题,比如:如果搬移铃声后如果设置的系统预置的铃声不激活越狱环境来电是没有声音的,除非是自定义导入的;还有桌面应用图标消失,不激活越狱环境无法打开WiFi等一系列的问题,经过我测试,能基本无影响的可能就只能是墙纸了,还好墙纸有几十至200兆的空间可以释放(6P 可以释放 202M),搬移墙纸可以使用 Cydia 原生的保准搬移脚本来搬移,使用方法:用WinSCP 登录后,点击“打开终端” 按钮,在输入命令对话框输入:

  /usr/libexec/cydia/move.sh /Library/Wallpaper 

        但是光搬移墙纸可能还是无法满足系统区的需求;

        这个时候就需要用到另外一个工具了:iCleaner Pro ;当前最新版为 7.5.4,

        因为此应用危险程度较高,前期在大老板源上架时一些小白喷子不看说明又乱七八糟改最后搞得白苹果后骂人,最后开发者就将 Pro 版在大老板源下架,仅保留一个简单功能的标准版,Pro 增强版则需添加开发者的个人源来安装,源地址:http://ib-soft.net/cydia 或者在 蔡明美的个人源下载镜像:http://cydia.angelxwind.net

iCleaner Pro 简单粗暴无影响的精简

        安装好以后打开 iCleaner Pro ,先点击最下面工具栏的齿轮图标,拖动到最下面,然后点击“Language Selection” 下拉菜单,然后选择 “Chinese (Simplified Han)(简体中文)” 将其设置为简体中文环境,

        然后再点击工具项目最左边的 “+” 号,在此界面选择 语言分类的 “语言”,进入后首先设置我们想要精简的语言,点击 “设置”的 “删除语言” ,然后点击右上角的 “选择全部” 按钮来将我们需要删除的语言全部选定,然后再检查一下,将自己还需要的语言 (比如:韩语,日语等) 的勾去掉,“Japanese” 日语建议保留,有些表情和符号有可能会调用;

  移除 点击此处添加图片说明文字 

        选择好要删除的语言后再点击左上角的 “返回” 按钮,然后再依次点击上面语言项目的 语言&国际键盘&语音控制语言 来精简删除基本不用,占着茅坑不拉屎的主!(在点击的弹窗我们无需分析,直接选择 “清理” 即可)!6P 测试机在刚越狱没有安装其它插件的情况下经测试清理的空间占用,语言:91.79 M;国际键盘:189.62 M;语音控制语言:44.17 M ,加上开始搬移的墙纸: 202 M,在我的 6P 测试机上可以释放系统区将近: 527.58 M,基本够用了!!!

  移除 点击此处添加图片说明文字  移除 点击此处添加图片说明文字 

        在系统区空间释放以后我们就可以愉快地安装喜欢的插件了,在没有精简之前,我尝试过16G iPhone6 安装简单的基本依赖库都会安装不下去,爆空间满!

        精简部分讲完,开始讲洁癖患者和换机用户 比较关心的抹除的功能部分了!

iOS 9.2~9.3.3 越狱的正确抹机步骤

        因为某些方面的原因,有些越狱用户在越狱后想初始化到新机未激活的状态,并且系统性的擦除自己使用过的痕迹数据,但是因为以前的越狱的 Cydia 在第一次运行时会强制搬移系统文件到用户区,而抹除时会将用户区的资料大部分删除,其中就包括了系统搬移的 /var/db/stash 文件夹,这样就导致白苹果或无桌面应用图标。

        新版盘古越狱因为完美越狱的漏洞缺少,采用了一种全新的方式来激活越狱环境,结果反而创造出一种新的越狱形式:可以做到在越狱环境和非越狱环境之前切换,(人呀其实也别太懒,这个确实没有什么吐槽的,只不过启动后点击一下重新激活越狱环境,有些人就觉得 “哎哟,好麻烦呀,哎哟,垃圾呀”!!!我在想要是你看到一个盖着井盖的井里有几百块钱,估计再麻烦你都会要想办法把它挖出来,给你脖子上围一圈烧饼都会饿死“嘴边上的吃完了懒得转”哈哈哈!!! )

问题现象

        因为 Apple 的 iOS 新版加密验证等问题,以及要保证未越狱环境的正常启动,这次新版越狱米有搬移任何系统文件,这样就可以做到在选择执行 “抹掉所有内容和设置” 后,设备就不会白苹果了,但是还是会有几个小问题需要解决,最大的问题就是 :1,如果没有提前卸载安装在 /Applications 目录下的系统级第三方应用,那么桌面图标还在,因为无越狱环境也无法执行;2,如果卸载了 Cydia,再重新越狱时是不会重新安装 Cydia 的,导致无法继续接下来的工作;3,就算没有卸载 Cydia,抹除时会将 /var/lib 和 /var/log/apt 文件夹删除,导致在重新越狱后打开 Cydia 会因为找不到已安装插件安装清单记录文件而导致红字错误无法安装任何插件!!!

  移除 点击此处添加图片说明文字 

解决方式原理

(利用 SSH 服务)

        因为 OpenSSH 服务是安装在系统区的,所以 “抹掉所有内容和设置” 对其是无效的,只不过新版 iOS 以及越狱方式的改变,在没有越狱环境的情况下,OpenSSH 服务是不会生效的,当重新越狱后只要越狱环境已启动,服务马上生效,此时就可以连接 iOS 设备来访问 root 根目录以及执行命令等了,然后将缺失的文件补上即可解决一切问题!

越狱设备正确的抹除初始化方式顺序以及注意事项

        根据上面解决方案的原理,意味着我们在抹除前有先后的流程以及几点特别注意事项,尤其是想干净的抹除来保持现有版本不刷机的情况下:

        正确的完整抹除步骤:

        1;检查是否安装 OpenSSH,并检查是否生效,尝试使用密码登录一次,这样避免别被一些插件(如 360,快捷开关)自作聪明地关闭服务以及到最后登录时发现原始密码已经被修改,而修改的密码又忘记了!!!

        如果忘记密码越狱环境还在,且可以访问 root 根目录,可以点击此链接下载一个原始密码表文件替换即可恢复初始的 “alpine” 密码:点我下载  (下载后解压,将 master.passwd 文件通过助手工具的文件管理导入 /etc 文件夹来 “替换”,请勿先删除设备内的文件,一定要替换来保留权限!!!)

        2,检查桌面上是否有安装在系统应用目录 /Applications 下的第三方桌面应用,具体表现为长按图标,图标抖动,如果是非系统自带的应用,且左上角无删除的角标,如无角标则为系统级第三方桌面应用!然后在打开 Cydia 删除全部系统级第三方桌面应用(此步骤是因为在抹除时仅删除用户区数据,不会删除系统区文件,当你抹除后发现还有无法运行且没办法再删除的第三方桌面应用时你会哭笑不能!)如果是非正常方式安装(不是通过Cydia安装管理的)的桌面应用手动删除!!!

        3,对照下图再删除非初始的插件来尽量做到干净,但是最好别删除越狱初始化的插件,有一个一次删除大部分插件的方法就是:首先卸载: Cydia Substrate !因为很多插件都是依赖于这个环境的,当你卸载它时,相当于拆房子的地基,其他依赖于它的插件就会自动添加到卸载队列里面!

       需要特别特别注意的就是当卸载插件时一定要多留一个心眼,先检查一下卸载插件队列里面是否有越狱必须依赖和存在的插件,有就赶紧取消不要点确认,经常遇到有些人眯着眼睛乱点卸载,然后卸载了啥都不知道,结果 Cydia 不见,没iFile,没OpenSSH 服务,没 afc2 服务,啥路子都给你搞没,想救也救不了!!!

        4,上面 2 个步骤一切检查完毕正常后,最后卸载 Cydia (当然如果你抹除后还是要越狱的可以不用卸载 Cydia ,这样再重新越狱时会好一些的)

        5,打开 设置-通用-还原-“抹掉所有内容和设置”

至此,设备基本抹除干净,一点也看不出越狱的痕迹,助手工具检查也是未越狱状态,OpenSSH端口也无法打开!!

补充说明:卸载插件其实不是必须的,但是就怕乱七八糟的一些插件不按原理出牌,所以尽量的先卸载吧,要是怕麻烦完全可以跳过没有多大影响的!


  移除 点击此处添加图片说明文字 


按照上述步骤抹除后重新越狱的要点和修补方法

        先自行重新越狱,安装越狱的 IPA 程序执行越狱

        重新越狱后,如果之前卸载过 Cydia 的桌面依旧没有Cydia;但因为越狱环境启动,此时抹除之前安装的 OpenSSH 服务就启动了,有了 OpenSSH 服务就啥都不怕,可以利用此服务用 WinSCP 客户端来登录设备后安装 Cydia 以及修补抹除时删除而缺失的已安装插件库文件了!

         如果没有卸载 Cydia ,在越狱环境激活后可以打开它,但是在 Cydia 里面是无法安装任何插件,安装时到最后会报错,当然如果 Cydia 已经卸载,你要通过 WinSCP 来安装 Cydia 一样也会因为缺少文件而无法安装!  

  移除 点击此处添加图片说明文字 


        再一个,当重新越狱后,因为越狱主程序的机制问题,它无法再次下载 Cydia.tar 来安装 Cydia,每次启动时点激活都会是一键越狱和构建越狱环境,这个也不影响只不过时间比较长,过段时间后会注销,Cydia 也没有装上,但越狱环境会激活,当激活后 OpenSSH 服务就会开启,

  移除 点击此处添加图片说明文字 


        然后使用 WinSCP 登陆 iOS 设备,先将抹除时删除的lib和/log/apt文件夹利用备份恢复(如果没有Cydia 的也必须先恢复此文件夹才能重新安装 Cydia ),

实    操:

        我们先激活越狱环境并使用助手工具建立本地 SSH 连接通道,这里我使用的是 i-Funbox,

  移除 点击此处添加图片说明文字 

        通道创建好以后,打开上面提供的 WinSCP ,选择 NO WIFI  配置登录,然后将前面提供的 lib 原始备份 tar 压缩文件拖到设备中,再在设备中选择此文件 右键 — 文件自定义命令 — 解压选择tar至绝对路径,

  移除 点击此处添加图片说明文字 

        当解压完毕,Cydia 的插件清单文件就恢复正常(其实这个严格上讲 /var/lib 属于 Debian Packager 和 APT 0.7 Strict (lib) 插件的支持文件, Cydia 依赖于它们运行的)

        如果之前没有卸载 Cydia 的,在恢复缺失的文件后即可正常安装插件了!

  移除 点击此处添加图片说明文字 


        如果之前卸载了 Cydia 的,再直接使用离线的Cydia安装包(包括依赖的语言包)来安装Cydia,

        先准备好 Cydia 安装所需要的 2 个安装包:

        1:Cydia Installer         Ver 1.1.27  下载地址:点我下载 ;

        2:Cydia Translations Ver 1.1.12  下载地址:点我下载

        将上面 2 个文件导入设备上 (保持该目录没有其它的 deb 安装包,有的话最好新建一个英文名称不带空格的文件夹导入),然后在空白的地方点击右键,选择:静态自定义命令 — 安装全部DEB, 然后可以看到安装结果正常无错,

  移除 点击此处添加图片说明文字 


        关闭结果弹窗后再在空白的地方点击右键,选择:静态自定义命令 — 清理缓存,然后就可以在 iOS 设备桌面上看到熟悉的 Cydia 回来了,并且可以正常安装插件了!然后重启激活越狱环境时也不会每次都是执行构建越狱环境了,可以直接点击 “重新激活” 了!!!

iOS 9.2~9.3.3 越狱的注意事项

关于精简

        精简最多删除点语言包和应用的背景图片(有些应用会根据设备调用按照iOS程序设计规范来调用不同分辨率的图片资源,当正确的资源没有找到时会调用其他低分辨率的资源,这也是为啥有些人手痒使用 iCleaner Pro 清理图像之后程序运行界面出现黑边的原因)啥之类的,涉及系统应用及服务的我可以说很多时候越精简问题越多!毕竟iOS要做到无缝应用互联的话怎么都有千丝万缕的牵扯,一旦有内核想去调用精简的系统部分不死都会卡!

关于补丁

        本次越狱的特殊性,没有对系统过多的破解,在设备启动时是标准的启动环境,而新版 iOS 增强了系统的安全性,在启动的过程中内核会自行校验二进制执行程序的安全性(是否被修改),如果安装了对系统原生二进制执行文件修补破解的插件(比如有些 运营商破击补丁是直接修改的二进制调用文件),轻则该程序闪退或功能无法开启,重则直接白苹果,如果是删除根目录禁止搬移标识文件来让 Cydia 搬移部分系统文件或使用 CoolStar 编写的搬移插件的同学应该知道为啥搬移后重启没激活时 WiFi 无法打开了吧,因为 iOS 检测到了系统文件的变化而停止了该部分的服务,只有当激活越狱环境后才能突破保护让其正常工作!

        修改一般仅限于二进制可执行文件,如果是图片这些一般不影响,

        今后越狱的发展我估计会沿用现在的这个标准了,其实只要是解决了部分的 bug,我觉得这种方式还是挺好的,人要勇于接受一点新东西,启动后要使用越狱环境点一下激活又不会死人,还能有多麻烦?针对系统文件修补的也要基本往 CS 环境发展,不会直接改动系统文件,而是通过钩子来内存修补了,CS 插件全部是这种!!!


其实真正特别反感的倒是那些做改机的黑产的骗子们,哈哈哈!!!

关于插件的源安装

         强烈建议同学们不要添加第三方源(开发者自建源和原创源除外)如果实在是有付费软件想下载试用的,我宁愿你们添加这个源:julio.xarold.com 并安装这个开发者编写的用于下载插件的插件:Cydown ,在技术组 repo.feng.com 源有完美语言包安装

        安装此插件后可以直接下载 Cydia 不付费购买无法下载的插件,还可以在本机内保留安装副本,它自身也带了绝大多数常用的开发者的源,只需要点击即可添加其他开发者的源

        如果还有需要破解才能使用的,也可以在通过上面安装后用没有修改包标识的破解包来通过Autoinstall来离线覆盖(先安装原版的原因是防止主程序安装时缺少依赖,而依赖大部分是免费的导致立现无法安装)

        至于真正需要破解的插件可以在Cydown 的作者的一个专门的页面下载:http://julio.xarold.com/cracked/

        最后说明一句:我提供了正确的破解插件的安装方式并不是鼓励你们使用盗版,而是首先从安全的角度去提醒和引导你们,我不是正版卫道士,但我测试试用排雷后确实觉得好的哪怕我试用的不是正规方式安装的插件我都会去付费,作者开发不容易,要理解共赢,试想如果开发者付出努力结果不成正比那谁来开发?最后吃亏的还是你们,典型的比如:1% 的WindowsPhone 系统有哪个开发者会愿意开发?连腾讯支付宝都不干了!

小      结

上面教程全部说的其实是基本原理和 WinSCP 的基本使用,请善用工具和多用脑;

不要谈到 OpenSSH 就好像谈到老虎一样害怕,只要修改了默认的密码并记住它,你的设备比安装afc 服务还要安全!!!

        只要是没有搬移过系统文件的越狱设备是全部都可以抹除的,前提是按照上面的原理来规划

        如果已经搬移了系统文件的,可以参照上面的搬移原理自行逆向操作,将快链删除并将搬移的文件夹放回原地,具体流程因为每个文件夹位置不同我就不累述了,而且有些人看教程都会给你搞错(比如给你文件夹多加一个空格,比如少打几个字母等)然后开始喷粪!

        另附上:

        如果墙纸搬移了在抹除后也会被删除,所以也把我从 6P 提取的全部系统自带壁纸作了一个包含完整路径的备份,如需恢复可自行参考上面的恢复教程恢复!   点我下载

教程只是一个告诉你操作的原理,看教程不能只看文字,

需要你用心去理解为什么要这么做,如果不这么做会有什么后果,不要鼠目寸光!

码字不易,如果您喜欢本文,请不要吝啬,点击下面的 “赏” ,打赏一点烟钱咖啡方便面,哈哈哈


评论(1)

热度(4)