安卓玩机工具推荐----高通芯片9008端口读写分区 备份分区 恢复分区 制作线刷包 工具操作解析
安卓玩机工具推荐----ADB状态读写分区 备份分区 恢复分区 查看分区号 工具操作解析
前面做了两期教程。分别解析了下ADB端口与高通9008端口备份分区一些基础的常识,那么对于MTK芯片如何无固件备份分区和制作线刷包呢。前面对于MTK芯片也做过一些教程。
往期同类教程
mtk芯片机型 另类制作备份线刷包的方式 读写分区
MTK芯片机型的备份单分区与全字库各种方法解析与相关教程
玩机搞机---安卓机型mtk和高通芯片查看分区 导出分区 备份分区的一些工具分析
MTK芯片机型的备份单分区与全字库各种方法解析与相关教程
等等。其实操作已经很明了。但机型与mt芯片的不同。操作也略有不同。那个工具适合那个机型具体还是要实际操作来验证。因为个别厂家会加密一些机型。另外有些操作需要几个工具结合使用来完成。今天的博文只针对以往的教程做一些补充说明和演示
mtk芯片机型备份分区第一步
首先备份自己机型的pgpt文件。简单来说就是mtk的分区表地址段。至于怎么备份。有twrp下 adb root下或者借助第三方工具。前面的【MTK芯片机型的备份单分区与全字库各种方法解析与相关教程】博文讲了用里面的工具生成mtk刷机需要的引导txt。这个是一种方法。对于早期机型也可以使用上面博文的的一款工具来备份。但对于新版机型不太适用。今天在讲下怎么备份mtk的pqpt分区表和转换为mtk芯片刷机必须的mt****.txt文件
操作还是要借助一些工具来组合完成
打开这个博文【玩机搞机----mtk芯片机型 另类制作备份线刷包的方式 读写分区等等】中的工具。其实教程中有备份pgpt的操作步骤。但今天使用另外一种方法来演示
首先打开这个工具,按图示演示备份机型的pgpt文件。这款工具对于mtk机型支持很多。操作前要初步了解mtk芯片的META BROM等等模式的具体方法。运行工具要安装python环境
当联机后点击读取分区界面就会出来手机的各种分区。在这一步上就可以备份出手机上的所有分区。这个步骤在不演示。按图示步骤勾选备份GPT分区表后就可以备份出当前机型的pgpt分区表文件。
然后借助另外一款工具来转换为mtk线刷必须的引导
有了引导然后在结合工具备份的分区那么就是一个完整的线刷包了。另外你需要参考以上博文修改下对应的脚本。例如需要刷入那些分区 那些分区需要屏蔽不写入等等。
MT引导部分代码
# General Setting
#
############################################## MTK AUTH BYPASS TOOL #######################################################
- general: MTK_PLATFORM_CFG
info:
- config_version: V1.1.2
platform: MT6765
project: mf_mtk555
storage: EMMC
boot_channel: MSDC_0
block_size: 0x20000
check_bootloaders_consistency: false
###############################################################################################################
#
# Layout Setting
#
###############################################################################################################
- partition_index: SYS0
partition_name: preloader
file_name: NONE
is_download: false
type: SV5_BL_BIN
linear_start_addr: 0x0
physical_start_addr: 0x0
partition_size: 0x400000
region: EMMC_BOOT1
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: BOOTLOADERS
is_upgradable: true
empty_boot_needed: false
reserve: 0x00
- partition_index: SYS1
partition_name: pgpt
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x0
physical_start_addr: 0x0
partition_size: 0x8000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: INVISIBLE
is_upgradable: false
empty_boot_needed: false
reserve: 0x00
- partition_index: SYS2
partition_name: boot_para
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x8000
physical_start_addr: 0x8000
partition_size: 0x100000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: UPDATE
is_upgradable: false
empty_boot_needed: false
reserve: 0x00
- partition_index: SYS3
partition_name: recovery
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x108000
physical_start_addr: 0x108000
partition_size: 0x4000000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: UPDATE
is_upgradable: true
empty_boot_needed: false
reserve: 0x00
- partition_index: SYS4
partition_name: para
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x4108000
physical_start_addr: 0x4108000
partition_size: 0x80000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: INVISIBLE
is_upgradable: false
empty_boot_needed: false
reserve: 0x00
- partition_index: SYS5
partition_name: expdb
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x4188000
physical_start_addr: 0x4188000
partition_size: 0x1400000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: INVISIBLE
is_upgradable: false
empty_boot_needed: false
reserve: 0x00
- partition_index: SYS6
partition_name: gsort
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x5588000
physical_start_addr: 0x5588000
partition_size: 0x1000000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: UPDATE
is_upgradable: false
empty_boot_needed: false
reserve: 0x00
- partition_index: SYS7
partition_name: ffu
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x6588000
physical_start_addr: 0x6588000
partition_size: 0x800000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: UPDATE
is_upgradable: false
empty_boot_needed: false
reserve: 0x00
- partition_index: SYS8
partition_name: cust
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x6d88000
physical_start_addr: 0x6d88000
partition_size: 0x34000000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: UPDATE
is_upgradable: true
empty_boot_needed: false
reserve: 0x00
- partition_index: SYS9
partition_name: vbmeta_system
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x3ad88000
physical_start_addr: 0x3ad88000
partition_size: 0x800000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: false
operation_type: UPDATE
is_upgradable: false
empty_boot_needed: false
reserve: 0x00
也需要初步了解MT设备中引导txt脚本中的具体含义,这个都可以与官方脚本对比,其实都很简单
以上只是演示了备份分区和mtk芯片引导的操作步骤。类似的步骤其实很多。在这边还有一个问题,mtk刷机平台SP_Flash_Tool的版本很多。具体线刷也要看是否支持当前mtk芯片。不一定最新的就是最好的,mt有的官方固件或者平台会加密DA文件。或者线刷也要查看你加载的DA是否支持你的机型。这个也需要借助一款工具来查看
可能遇到的问题:
在以上的步骤中手机是进入一个特定的模式brom来运行分区读写操作的。其实目前很多机型刷写也是在这个模式里。另外任何操作的前提都是联机。驱动是关键。关于txt引导的制作。其实还可以通过adb查看分区地址段来编写。在往期博文中也有做过说明。类似通过adb查看分区地址段
Part_Name Size StartAddr Type MapTo
preloader 0x0000000000600000 0x0000000000000000 2 /dev/misc-sd
mbr 0x0000000000080000 0x0000000000000000 2 /dev/block/mmcblk0
ebr1 0x0000000000080000 0x0000000000080000 2 /dev/block/mmcblk0p1
pmt 0x0000000000400000 0x0000000000100000 2 /dev/block/mmcblk0
pro_info 0x0000000000300000 0x0000000000500000 2 /dev/block/mmcblk0
nvram 0x0000000000500000 0x0000000000800000 2 /dev/block/mmcblk0
protect_f 0x0000000000a00000 0x0000000000d00000 2 /dev/block/mmcblk0p2
protect_s 0x0000000000a00000 0x0000000001700000 2 /dev/block/mmcblk0p3
seccfg 0x0000000000020000 0x0000000002100000 2 /dev/block/mmcblk0
uboot 0x0000000000060000 0x0000000002120000 2 /dev/block/mmcblk0
bootimg 0x0000000000600000 0x0000000002180000 2 /dev/block/mmcblk0
recovery 0x0000000000a00000 0x0000000002780000 2 /dev/block/mmcblk0
可以看到分区起始段和大小。通过对比同型号引导来编写自己机型的txt文件,或者通过有些玩家还可以通过镜像工具来适配第三方twrp。以此来备份分区。或者用SP_Flash_Tool来回读分区 备份分区等等。另外就算是自己机型备份的分区,有极个别在写入原机会出现bug的故障,一般都是分区校验和机型验证等相关原因.
类似的MTK备份方法还有很多种。例如各种手机维修加密狗工具这些,但对于普通玩机爱好者有局限性。后续有机会在实际解析
还是那句话,在好的工具具体还在于使用者。在使用各种工具前遇到问题。首先要了解机型的一些操作常识.了解一些分区基本规律。各分区代表什么意义。任何的分区操作读写都有几率影响手机的正常运行。所以要谨慎,如果连简单的驱动安装 系统环境等等都不太了解。建议一定要谨慎操作
在详细的教程都只是拓展你的操作思路。打开你的思维。在操作中并运用分析,感受,联想,思考的一种学习方法.在此贴之前已经做了ADB 高通9008和这期MTK芯片备份分区等等的一些基本常识与操作。本来要做个展讯芯片读取备份的教程。但由于目前手头暂时没有展讯芯片机型。另外国内展讯芯片机型相对较少。有缘再说。
系列教程只是本人的一些浅薄分析与实际步骤演示。不到之处请谅解。如果对你有些许帮助,请点个赞赞呗