移动叔叔

标题: 无损调整MT6752手机内置EMMC硬盘分区 打造双系统 免驱线刷分区 [打印本页]

作者: 光灵子    时间: 2015-4-12 20:41
标题: 无损调整MT6752手机内置EMMC硬盘分区 打造双系统 免驱线刷分区
本帖最后由 光灵子 于 2015-4-15 20:19 编辑

大家都知道 tf卡可以被当作优盘连接到电脑 很方便
tf卡对应的安卓设备是/dev/block/mmcblk1
我们知道手机内置的emmc硬盘是16G的  对应的设备是/dev/block/mmcblk0
既然tf卡可以被当作优盘 那么内置的emmc自然也是可以的
有了理论就来实战把
我们的目的 就是插上手机 电脑多出一个优盘 而这个优盘就是我们手机内置的emmc 如果你插入的是ubuntu系统的电脑
那么此时电脑将显示出6个分区 这时候 我们可以自由的去修改system data 等分区 也可以免驱动刷入线刷包
首先手机当然要root 这个必须的 不哆嗦

说方法
我们选择 集成 终端模拟器 且 支持 触摸的 twrp recovery刷入手机
刷入方法 dd if=/sdcard/recovery.img of=/dev/recovery
这里说一下输入 开机第一屏第二屏的是dd if=/sdcard/logo.bin of=/dev/logo
如果是备份串号 是 dd if=/dev/nvram of=/sdcard/nvram.img

既然刷入了 recovery后 那么我们重启进入recovery吧
没记错是 关机下按 音量减 开机就行了
然后呢??
注意了


点击 高级 打开终端功能

输入如下命令 当然说白了就是卸载一切
umount /system
umount /data
umount /cache
umount /external_sd
umount /sdcard
不想输入的话 就直接点击 挂载 然后把那些选项前面的√都去掉 也可以

重点来了
输入如下命令
rm /dev/block/mmcblk1*
ln -s /dev/block/mmcblk0 /dev/block/mmcblk1
好了   这时候  我们再次进入挂载界面 然后点击U盘模式

电脑就会出现一个U盘  

可惜因为windows的原因 可移动设备不支持多重分区
而windows又总是自以为是的先检测mbr 导致windows无法识别出这个多出来的优盘的分区
但是我们并没有失败
因为 打开minitools后我们清楚的看到 手机内置emmc居然有21个分区 我也是醉了 分区表是GPT
而我们打开bootice查看 也是显示21个分区 GPT分区表

当然 如果你是ubuntu之类的linux系统
插上电脑后就会出现6个盘   也就是ext4分区都被识别了
linux下可以随意删除 system分区的文件 也可以方便的自己制作线刷包
当然windows下访问ext4比较困难了
但是我们的目的不是这个
我们要刷入线刷包 免驱刷入

分区号        起始扇区   分区容量   分区名
emmc_p1: 00000400 00001800 "proinfo"
emmc_p2: 00001c00 00002800 "nvram"
emmc_p3: 00004400 00005000 "protect1"
emmc_p4: 00009400 00005000 "protect2"
emmc_p5: 0000e400 00000200 "seccfg"
emmc_p6: 0000e600 00000300 "lk"
emmc_p7: 0000e900 0000a000 "boot"
emmc_p8: 00018900 0000a000 "recovery"
emmc_p9: 00022900 00003000 "secro"
emmc_p10: 00025900 00000400 "para"
emmc_p11: 00025d00 00004000 "logo"
emmc_p12: 00029d00 00004000 "mobile_info"
emmc_p13: 0002dd00 00005000 "expdb"
emmc_p14: 00032d00 00002800 "tee1"
emmc_p15: 00035500 00002800 "tee2"
emmc_p16: 00037d00 00010300 "metadata"
emmc_p17: 00048000 00300000 "system"
emmc_p18: 00348000 000a0000 "cache"
emmc_p19: 003e8000 01956400 "userdata"
emmc_p20: 01d3e400 00015800 "otp"
emmc_p21: 01d53c00 00008000 "flashinfo"
上面就是么么哒3N 联通版的21个分区的意义
常规的刷机 就是直接写入boot system 分区
这里介绍 用bootice将线刷包刷入手机的方法


[attach]592930[/attach]

[attach]592931[/attach]
你们看到了吧 手机的emmc已经被识别出来了
大小是14.7G  官方说是16G的
分了21个分区
说一下怎么刷入system吧
system是第17个分区
我们打开bootice 选择手机的磁盘

[attach]592955[/attach]
点击分区管理
[attach]592958[/attach]
双击 序号为16的那个1.5G的分区

[attach]592982[/attach]


[attach]592977[/attach]

点击恢复后 就会开始写入system.img了

其他的依此类推

有兴趣的可以试试呀

目前我不知道 mkfs_ext4生成的img和dd备份生成img有啥区别
是否都可以通过dd的方式直接刷入
有知道的可以告诉我一下
当然 也可以把上面的
umount /system
umount /data
umount /cache
umount /external_sd
umount /sdcard
rm /dev/block/mmcblk1*
ln -s /dev/block/mmcblk0 /dev/block/mmcblk1

保存为ok这个文件
加入到recovery里面
然后以后启动recovery只需要在终端输入ok后开启u盘模式就行了
有兴趣的可以自己编译recovery 加入这个功能


刚刚分析了一下线刷包的img镜像  他们是压缩过的ext4分区镜像
这种镜像不能被直接写入  
需要下载simg2img for win先解压出真实镜像
第17 18 19分区 也就是system cache data分区 的镜像都是经过压缩的
要用simg2img解压后才可以用上述方法刷入
同样的分区还有12 9 4 3分区也是ext4 都需要simg2img解压后刷入 除此之外 其他的都是直接写入无压力
如boot.img recovery.img等

我们知道手机即便是root后 一般情况下能被写入的 可能受到破坏的是 system data cache 这三个分区
其他分区 基本上是很少写入数据  所以线刷 一般就是system data 和cache
而cache没有数据  data新刷机也没什么数据 都可以不刷
所以最后线刷会官方 就只是刷入boot.img system.img recovery.img就够了 其他的 我们都没动他 不会坏
如果坏了 那就是硬件问题了
也就是7 boot 8 recovery 17 system 然后出厂恢复一次就完事了
其中boot.img和recovery.img直接刷  system.img需要先解压一次 用simg2img解压 然后刷入解压后的  有1.5G的样子
如果想调整system cache data分区大小的  只需要将手机连接到ubuntu系统上 用gparted无损调整即可
应该是不会有问题了
希望大家玩机顺利

另外ubuntu下直接读写system分区我表示hai的很
就这样吧  想线刷回官方 但是驱动难装的同志 可以用用
喜欢diy的也可以折腾了




我已经用这个方法成功的无损给手机的内置emmc增加了两个分区
目前一切正常
手机 音量减开机 可以进入第二系统
两个系统的分区完全独立

















欢迎光临 移动叔叔 (http://bbs.ydss.cn/) Powered by Discuz! X3.2