首先手机root且安装busybox和超级终端软件,这里不提供自己百度一大堆

一.制作scatter

示范

PRELOADER 0x0

{

}

MBR 0x600000

{

}

EBR1 0x680000

{

}

__NODL_PMT 0x700000

{

} __NODL_PRO_INFO 0xb00000

{

}

__NODL_NVRAM 0xe00000

{

}

__NODL_PROTECT_F 0x1300000

{

}

__NODL_PROTECT_S 0x1d00000

{

}

__NODL_SECCFG 0x2700000

{

}

UBOOT 0x2720000

{

}

BOOTIMG 0x2780000

{

}

RECOVERY 0x2d80000

{

}

SEC_RO 0x3780000

{

}

__NODL_MISC 0x3d80000

{

}

LOGO 0x3e00000

{

}

EBR2 0x4100000

{

}

__NODL_OPPO_CUSTOM 0x4180000

{

}

__NODL_EXPDB 0x4280000

{

}

ANDROID 0x4c80000

{

}

CACHE 0x3cd80000

{

}

USRDATA 0x44b80000

{

}

FAT 0x84b80000

{

}

可以直接从官方卡刷包提取或在超级终端输入

dd if=/proc/dumchar_info of=/mnt/sdcard/partition.txt bs=10000c count=1

然后在手机内存卡里找到partition.txt用编辑器打开,会发现所有分区的大小和地址都在这里,然后就自己算出分区表即可,提示:第一个分区的地址为0x0,那么第x个分区的地址就是前一个分区的地址加上该x分区的大小,示范如果要算出mbr的地址,查看下表perloader大小为0x600000,那么mbr的实际地址为0x0+0x600000=0x600000,ebr1的地址为0x600000+0x80000=0x680000,其他的自己算吧。

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

sec_ro       0x0000000000600000   0x0000000003180000   2   /dev/block/mmcblk0p4

misc         0x0000000000080000   0x0000000003780000   2   /dev/block/mmcblk0

logo         0x0000000000300000   0x0000000003800000   2   /dev/block/mmcblk0

ebr2         0x0000000000080000   0x0000000003b00000   2   /dev/block/mmcblk0

oppo_custom   0x0000000000100000   0x0000000003b80000   2   /dev/block/mmcblk0

expdb        0x0000000000a00000   0x0000000003c80000   2   /dev/block/mmcblk0

android      0x0000000038100000   0x0000000004680000   2   /dev/block/mmcblk0p5

cache        0x0000000007e00000   0x000000003c780000   2   /dev/block/mmcblk0p6

usrdata      0x0000000040000000   0x0000000044580000   2   /dev/block/mmcblk0p7

fat          0x00000000631a0000   0x0000000084580000   2   /dev/block/mmcblk0p8

bmtpool      0x0000000001500000   0x00000000ff9f00a8   2   /dev/block/mmcblk0

Part_Nameartition name you should open;

Size:size of partition

StartAddr:Start Address of partition;

Type:Type of partition(MTD=1,EMMC=2)

MapTo:actual device you operate

二,提取线刷资料

查看分区表_nodl_开头的不用提取

打开超级终端

输入su按回车

1.ebr1

实际大小为0.5k,由于各个机型不一样,所以提取约20k即可

dd if=/dev/ebr1 of=/mnt/sdcard/ebr1.bin bs=20000c count=1

2.ebr2

实际大小为0.5k,由于各个机型不一样,所以提取约20k即可

dd if=/dev/ebr2 of=/mnt/sdcard/ebr2.bin bs=20000c count=1

3.preloader

实际大小为约128k,所以提取128k即可

dd if=/dev/preloader of=/mnt/sdcard/OPPO/preloader.bin bs=512c count=256 skip=4

4.dsp_bl

dd if=/dev/dsp_bl of=/mnt/sdcard/dsp_bl.bin bs=512c count=64

5.sec_ro

实际大小约10k,由于各个机型不一样,所以提取约100k即可

dd if=/dev/sec_ro of=/mnt/sdcard/secro.bin bs=100000c count=1

6.mbr

实际大小为0.5k,由于各个机型不一样,所以提取约20k即可

dd if=/dev/mbr of=/mnt/sdcard/mbr.bin bs=20000c count=1

7.uboot

由于各个机型不一样,所以提取约1000k即可

dd if=/dev/uboot of=/mnt/sdcard/uboot.bin bs=1000000c count=1

8.boot

由于各个机型不一样,所以提取约5m即可

dd if=/dev/bootimg of=/mnt/sdcard/boot.img bs=5291456c count=1

9.logo

由于各个机型不一样,所以提取约2m即可

dd if=/dev/logo of=/mnt/sdcard/OPPO/logo.bin bs=200000c count=1

10.recovery

由于各个机型不一样,所以提取约7.5m即可

dd if=/dev/recovery of=/mnt/sdcard/recovery.img bs=7800000c count=1

其他例如system,cache等就不用提取了吧,因为比较大,谁会把整个手机的闪存格式化,提取上面的资料刷入手机后进去rec刷官方rom即可

还有这两个分区也备份一下以不时之用

pmt

dd if=/dev/pmt of=/mnt/sdcard/pmt.bin bs=2000000c count=1

nvram

dd if=/dev/nvram of=/mnt/sdcard/nvr

提取所有mtk机型的线刷包的更多相关文章

  1. 红米1线刷救砖教程V5版(移动联通适用,线刷包永久有效)

    红米1线刷救砖教程V5版(移动联通适用,线刷包永久有效) 原文来自:http://www.miui.com/thread-1890972-1-1.html?mobile=2 ,加了些自己的经验. (我 ...

  2. 教你从手机中提取system镜像制作线刷救砖包的简单方法

    其实在制作刷机包的过程中,有时候没有官方或者第三方提供的救砖包(线刷),那怎么办?常规的方法有两种:(此处为常规方法,回读的方式暂不说明)     1.卡刷包转线刷包     2.dd命令导出分区镜像 ...

  3. 红米note.线刷

    1.第一代 红米note 时间:20180121 这次 线刷之后,摄像头还是模糊,扫描小一点的二维码的时候 还是一片模模糊糊... 2.ZC:我下载的“通用刷机工具”名为:MiFlash2017-12 ...

  4. 红米1S.线刷

    ZC:遇到问题:“Missmatching image and device”,解决网址:“[2.23][史上最全]MiFlash线刷错误的那些事儿_收藏备用_小米手机4_MIUI论坛.html”(h ...

  5. 小米Recovery线刷精灵 v1.0.0 破解版

    下载地址:http://www.crsky.com/soft/75923.html 小米Recovery线刷精灵支持将Recovery线刷包一键刷入小米手机,支持小米所有型号. 小米Recovery线 ...

  6. 再次尝试mtk线刷时发现的一些资源

    线刷用到的工具:spflashtool,也可以下载vcom drivers 下载:http://spflashtool.com/ 查看usb状态的软件:usbdeview,网站里还有一些其它的软件 下 ...

  7. 记一次联想A820t救砖线刷

    因为是看着教程刷的(有大神放出教程,只管伸手拿来就好啦)但是照着教程做的过程中出现了一些问题还是值得注意的,在这里总结一下,给新手提供一点建议 教程比较长,我放到博客的文件中,需要的自己下载一下.或者 ...

  8. 记录魅族m1note编译TWRP recovery 3.1.0-0,包括mtk机型的处理方法

    1.安装64位linux系统,我用的是deepin os 15.3 2.将系统升级到最新版本 sudo apt-get update && sudo apt-get upgrade 3 ...

  9. 小米2s线刷出现remote: partition table doesn't exist

    =================问题============ 小米2s线刷出现remote: partition table doesn't exist =================解决方案= ...

随机推荐

  1. Application之图书馆

    前两天小编讲的都是些比较隐私的东西,为啥隐私?因为它俩(cookie和session)都只有用户自已才能使用和访问,今天小编来介绍个比较开放点的东西给大家. 小编虽已脱下学生服装多年,但如今忆起当年校 ...

  2. Intellij IDEA 14隐藏被排除的文件夹

    被排除的文件和文件夹以红色显示了. 看着这东西,人一下子就不好了. 还好设置可以改回来. Project tab右上角齿轮,关闭“Show Excluded Files”即可.

  3. Java程序员容易犯的10个错误

    1. Array 转 ArrayList 一般开发者喜欢用: List<String> list = Arrays.asList(arr); Arrays.asList() 会返回一个Ar ...

  4. C - Building a Space Station - poj 2031

    空间站是有一些球状的房间组成的,现在有一些房间但是没有相互连接,你需要设计一些走廊使他们都相通,当然,有些房间可能会有重合(很神奇的样子,重合距离是0),你需要设计出来最短的走廊使所有的点都连接. 分 ...

  5. python常用的一些东西——sys、os等

    1.常用内置函数:(不用import就可以直接使用)      help(obj) 在线帮助, obj可是任何类型     callable(obj) 查看一个obj是不是可以像函数一样调用     ...

  6. 对openflow 1.0协议的扩展

    通过这几天对openvswitch代码的分析,以及项目的须要,须要对openflow 1.0进行一定的扩展,发现网上没有这方面的教程,尽管在搞懂ovs代码架构,floodlight controlle ...

  7. jsp if else c标签 总结

    JSTL标签使用方法 keyword:JSTL标签.<c:choose>.<c:forEach>.<c:forTokens>.<c:if>.<c: ...

  8. 【C++深入探索】Copy-and-swap idiom详解和实现安全自我赋值

    分类: C/C++2012-08-30 21:40 2017人阅读 评论(2) 收藏 举报 任何管理某资源的类比如智能指针需要遵循一个规则(The Rule of Three): 如果你需要显式地声明 ...

  9. 配置VSFTP服务器

    一.Linux FTP服务器分类:  <1>wu-ftp  <2>proftp=profession ftp  <3>vsftp=very security ftp ...

  10. linux sudo环境变量设置

    这是第一次在博客园中写自己的随笔,也是第一次使用Markdown的编辑环境,值得纪念一下!希望在以后学习linux的道路上能多多记录自己的学习心得和遇到问题的解决方法,朝着运维的方向迈出坚实的脚步. ...