最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

recovery手动移植教程

IT圈 admin 31浏览 0评论

2024年5月19日发(作者:赵光辉)

替换篇: 主要替换文件有kernel,key ,,。 替换文件可以从

旧的recover 取得。 kernel 文件就是机子的内核 了。 key 文件是机子的按钮的

配 置文件。文件在 initrd/res 文件夹里 就是记载系 统各个分区挂载的

地方的文 件。在 initrd/etc 文件是开机初始化文 件。 在 initrd 如果你要添加或

着减少文件 ,记得修改文件

mtk篇

1. 最简单的移植方法是,先解压自己手机的官方。

进入解压文件夹,找到“kernel“及"kernel_header","ramdisk_header"复制备用。

有时候,你还要把recoveryrmdisketc目录下的留着备用。 ( 如果,

在安装新的rcovery之后无法进入recovery模式,那么,不必着急,先等待片刻,并尝试

再次进入。有时候,recovery中没有改好挂载点,会出现这种情况.如果

尝试第二次进入仍无法正常使用,可能是你手机的开机引导程序无法识别recovery。这时

候请把第三方recovery中的ramdisk_header也替换成官方的ramdisk_header即可。)

2. 找到第三方。个人推荐 “TWRP recovery”。(下载 同cpu的第

三方recovery)

将第三方 复制到工作目录,先把之前生成recovery文件夹重命

名,或者移动到其它目录。否则新的操作会把它删除。接着将它解包。同样得一个名为

recovery的文件夹。

3. 将第一步生成的kernel 及kernel_header,ramdisk_header复制替换到第二步生

成的第三方recovery文件夹中,并进入第三方recovery解压文件夹的

recoveryrmdiskect目录下,找到并打开,修改其中的挂载点信息.这里

要使用支持语法高亮显示的文本编辑器打开修改,如notepad++等,而不能用系统自带记事

本.其中,关于sd卡及内置存储的名称表示要与第三方的一样(有些第三方recovery用

emmc表示内置存储,那么你也要是这样表示.又如第三方用sdcard2表示外置存储,你也要

这么样表示.但挂载点是你手机的)。修改挂载信息是因为,硬件是你手机的,中

的kernel也换了你手机的.这就决定了手机的分区与挂载驱动的一致性并且与官方原来一

样.而及.rc文件中的相关代码只是要把这些分区挂载到某个目录下.在改好

这些挂载信息后,就能将分区挂载到正确的目录下.这一步一定要做,否则分区挂载错误,你

的手机系统文件可能会被破坏。或者,你清除缓存格式化等会格错分区。这样将致砖。

4.尽量修改解包目录下的各个.rc文件,将挂载文件系统部分修改成为你手机一致.(需

要对比来改).即修改包含{e2fsck,tune2fs,@android

/dev/block/mmcblk0p*}部分的代码. (有些要修改mdt@android等)

等,或

5.如果你是移植触屏的recovery,还要修改resimage目录下的相应图片的(像素)

大小,以适应你的机型。

我推荐的TWRP recovery 还要修改res目录下的文件。如果其中数据不对应

你的机型的话,进入recovery模式后,界面显示不正常。

6.重新打包。 打包之后,其名称为new_,不要疑惑,它就是新生成的

recovery,为了不覆盖原文件(),它就被命名为"new".其它带"new"开头的,是

用不到了,随时可以删了

7.刷入手机。你可以用sp flash tool 在“download”方式下指定分区刷入,也可以

用“叔叔工具箱”,在手机正常使用的情况下替换,但需要root权限。

如果遇到recovery无法使用的情况,请检查分析哪里出现的问题。有时候第三方的

recovery中的ramdisk_header没有替换成官方recovery中的ramdisk_header。开机

引导会无法识别.在做完这些,应该说是不会出现什么问题了。

非mtk篇

对于非MTK平台的recovery移植,要用“其它平台解压”进行解包。

在你用mtk解压出现错误提示,你就应该意识到你所解压的recovery是非

MTK平台的。换个解包批处理即可。

1. 非MTKrecovery解包之后,一般会有rmdisk文件夹、kernel、、

ram_disk、ram_及一个recoveryimg。该就你所解压的recovery,

只不过是自动复制到目录下而已。你应该注意到,非MTK的recovery解包之后与MTK

的有所不同,并且没有ramdisk_header与kernel_header。

2. 要移植非MTK的recovery,先把除了“ramdisk文件夹”之外的5个文件删除。

并把你解压的官方recovery的ramdisk、ramdisk_header、kernel、kernel_header与

ram_复制到第三方解包的recovery目录下(一般是只需要kernel、kernel_header

与ramdisk_header即可。但为了看起来像一个MTK平台的recovery,可以把5个文件

复制过来)

复制文件后,文件夹下看起来就像是MTK的 recovery。

3.进入待打包的文件夹的etc目录下,修改,把其中的挂载点信息修改

成你对手机的挂载点即可。可以参考官方recovery中的fstab文件来修改(修改是注意第

三方的关于sdcard方面的设置,其名称要保持与原来的一至,否则无法识别,比如,原第

三方recovery用sdcard2来表示外置sd卡,那么,你也要用sdcard2表示)。修改时建

议使用支持语法高亮显示的文件编辑器,比如、notepad++等打开修改以保证

其基本格式。最好不要使用window自带的记事本打开。

修改fstab文件很重要,如果挂载点错误。有可能,在你恢复出厂设置或者其它清除

数据的操作时格错分区,比如把system分区当成data分区格式化了等。这会导致你最终

无法开机,只能刷机或者找售后了。

4. 接下来就是打包。

在打包的时候,使用的是“MTK打包recoverybat”。在打包时,ramdisk文件夹与

ramdisk_header会先合并,kernel、kernel_header合并 ,然后才打包成一个新的

recovery,其名称就是 new_。

2024年5月19日发(作者:赵光辉)

替换篇: 主要替换文件有kernel,key ,,。 替换文件可以从

旧的recover 取得。 kernel 文件就是机子的内核 了。 key 文件是机子的按钮的

配 置文件。文件在 initrd/res 文件夹里 就是记载系 统各个分区挂载的

地方的文 件。在 initrd/etc 文件是开机初始化文 件。 在 initrd 如果你要添加或

着减少文件 ,记得修改文件

mtk篇

1. 最简单的移植方法是,先解压自己手机的官方。

进入解压文件夹,找到“kernel“及"kernel_header","ramdisk_header"复制备用。

有时候,你还要把recoveryrmdisketc目录下的留着备用。 ( 如果,

在安装新的rcovery之后无法进入recovery模式,那么,不必着急,先等待片刻,并尝试

再次进入。有时候,recovery中没有改好挂载点,会出现这种情况.如果

尝试第二次进入仍无法正常使用,可能是你手机的开机引导程序无法识别recovery。这时

候请把第三方recovery中的ramdisk_header也替换成官方的ramdisk_header即可。)

2. 找到第三方。个人推荐 “TWRP recovery”。(下载 同cpu的第

三方recovery)

将第三方 复制到工作目录,先把之前生成recovery文件夹重命

名,或者移动到其它目录。否则新的操作会把它删除。接着将它解包。同样得一个名为

recovery的文件夹。

3. 将第一步生成的kernel 及kernel_header,ramdisk_header复制替换到第二步生

成的第三方recovery文件夹中,并进入第三方recovery解压文件夹的

recoveryrmdiskect目录下,找到并打开,修改其中的挂载点信息.这里

要使用支持语法高亮显示的文本编辑器打开修改,如notepad++等,而不能用系统自带记事

本.其中,关于sd卡及内置存储的名称表示要与第三方的一样(有些第三方recovery用

emmc表示内置存储,那么你也要是这样表示.又如第三方用sdcard2表示外置存储,你也要

这么样表示.但挂载点是你手机的)。修改挂载信息是因为,硬件是你手机的,中

的kernel也换了你手机的.这就决定了手机的分区与挂载驱动的一致性并且与官方原来一

样.而及.rc文件中的相关代码只是要把这些分区挂载到某个目录下.在改好

这些挂载信息后,就能将分区挂载到正确的目录下.这一步一定要做,否则分区挂载错误,你

的手机系统文件可能会被破坏。或者,你清除缓存格式化等会格错分区。这样将致砖。

4.尽量修改解包目录下的各个.rc文件,将挂载文件系统部分修改成为你手机一致.(需

要对比来改).即修改包含{e2fsck,tune2fs,@android

/dev/block/mmcblk0p*}部分的代码. (有些要修改mdt@android等)

等,或

5.如果你是移植触屏的recovery,还要修改resimage目录下的相应图片的(像素)

大小,以适应你的机型。

我推荐的TWRP recovery 还要修改res目录下的文件。如果其中数据不对应

你的机型的话,进入recovery模式后,界面显示不正常。

6.重新打包。 打包之后,其名称为new_,不要疑惑,它就是新生成的

recovery,为了不覆盖原文件(),它就被命名为"new".其它带"new"开头的,是

用不到了,随时可以删了

7.刷入手机。你可以用sp flash tool 在“download”方式下指定分区刷入,也可以

用“叔叔工具箱”,在手机正常使用的情况下替换,但需要root权限。

如果遇到recovery无法使用的情况,请检查分析哪里出现的问题。有时候第三方的

recovery中的ramdisk_header没有替换成官方recovery中的ramdisk_header。开机

引导会无法识别.在做完这些,应该说是不会出现什么问题了。

非mtk篇

对于非MTK平台的recovery移植,要用“其它平台解压”进行解包。

在你用mtk解压出现错误提示,你就应该意识到你所解压的recovery是非

MTK平台的。换个解包批处理即可。

1. 非MTKrecovery解包之后,一般会有rmdisk文件夹、kernel、、

ram_disk、ram_及一个recoveryimg。该就你所解压的recovery,

只不过是自动复制到目录下而已。你应该注意到,非MTK的recovery解包之后与MTK

的有所不同,并且没有ramdisk_header与kernel_header。

2. 要移植非MTK的recovery,先把除了“ramdisk文件夹”之外的5个文件删除。

并把你解压的官方recovery的ramdisk、ramdisk_header、kernel、kernel_header与

ram_复制到第三方解包的recovery目录下(一般是只需要kernel、kernel_header

与ramdisk_header即可。但为了看起来像一个MTK平台的recovery,可以把5个文件

复制过来)

复制文件后,文件夹下看起来就像是MTK的 recovery。

3.进入待打包的文件夹的etc目录下,修改,把其中的挂载点信息修改

成你对手机的挂载点即可。可以参考官方recovery中的fstab文件来修改(修改是注意第

三方的关于sdcard方面的设置,其名称要保持与原来的一至,否则无法识别,比如,原第

三方recovery用sdcard2来表示外置sd卡,那么,你也要用sdcard2表示)。修改时建

议使用支持语法高亮显示的文件编辑器,比如、notepad++等打开修改以保证

其基本格式。最好不要使用window自带的记事本打开。

修改fstab文件很重要,如果挂载点错误。有可能,在你恢复出厂设置或者其它清除

数据的操作时格错分区,比如把system分区当成data分区格式化了等。这会导致你最终

无法开机,只能刷机或者找售后了。

4. 接下来就是打包。

在打包的时候,使用的是“MTK打包recoverybat”。在打包时,ramdisk文件夹与

ramdisk_header会先合并,kernel、kernel_header合并 ,然后才打包成一个新的

recovery,其名称就是 new_。

发布评论

评论列表 (0)

  1. 暂无评论