** 案例:**
大家是不是在刷第三方 recovery 的时候,明明已经刷进去了,命令提示符也没有报错提示,但是重启后进入 recovery 模式却提示“无命令。”,并且 recovery 还是官方的 recovery 呢???
原因分析:
此问题由于触发了 recovery 还原机制,导致官方 recovery 被还原回去了。脚本为 /system/etc/ 或 /system/bin 下的 install-recovery.sh,补丁文件为 /system/etc/ 下的 recovery-from-boot.p。数据文件为 /system/etc/recovery-resource.dat。每次当官方系统正常启动时,验证 recovery 分区损坏、recovery 非官方、或与 install-recovery.sh 描述的 recovery 版本不一致时,install-recovery.sh 将会执行打补丁命令,将 recovery 还原为官方的 recovery 系统。
退出官方 recovery 的方法:
- 首先打开官方 recovery 的选项。
一般 moto 机型,先按【音量 - 键】不放,然后再按【电源键】不放,然后再按一下【音量 + 键】,会出现官方 recovery 的选项,最后把所有键松开。
Droid Turbo 等按键为卡槽的设计,先按【音量 + 键】不放,然后再按一下【电源键】 会出现官方 Recovery 的选项,最后把所有键松开。
- 退出官方 recovery。
然后音量键(上下都可以)选择“reboot system now”,【电源键】为确认,重启手机。
解决此问题的方法:
-
再次进入 fastboot 模式。
-
正常刷入第三方 recovery。
例如:先将第三方 recovery 的名称改为 recovery.img 再刷入(电脑先要关闭“隐藏已知文件类型的扩展名”,然后再重命名,以免重复输入后缀)。
Win10 开启方式:控制面板->文件资源管理器选项->查看->取消选中『隐藏已知文件类型的扩展名』。
fastboot flash recovery recovery.img
- 刷完后不要关机,不要重启进入系统。一定要立即进入 recovery 模式。
注意:一定要保证 recovery 刷进去后立即进入 recovery 模式,不要直接开机!一定要关闭金山等软件!
否则开机后还原脚本自动还原 recovery 为官方的,再进 recovery 还是官方的而不是 TWRP 的!
- 假如进不去,卡在 TeamWin 界面,可以尝试如下命令恢复出厂设置:
注意:请注意备份个人资料。如果您并没有卡在 TeamWin 不需要执行这条命令。
fastboot -w
有些时候即使清空数据也无法刷入第三方 recovery。这时候你只能换台电脑试试看了。
-
破坏掉官方固件的 recovery 自动还原机制。
破坏还原机制有很多种方案,例如:<1> 可刷 supersu 刷机包,这个会破解还原机制;
<2> 在第三方 recovery 下删掉位置为 /system/ 下的 recovery-from-boot.p 补丁文件,/system/etc/ 下的 recovery-resource.dat,以及 /system/etc/ 下的 install-recovery.sh 还原脚本。
两个方案任选其一即可。