前言
在不支持动态分区的手机上,GSI一般塞不下你的system分区。这时你需要扩展它。如今很多教程比较老,适用机型少。今天我就给大家带来2024年的一个成功率相对较高的教程,希望能够帮到大家。
本教程根据酷安同作者教程修改,原理是一模一样的,不过本文叙述简洁一些。
注意事项
1.扩容会清除所有数据!
2.没有十全十美的教程,只能说这篇教程成功率更高。无论你有多大自信,都要先备份数据,掌握救砖方法。一切后果请自行承担,我可以提供帮助,但你的损失与作者无关!
3.EMUI设备可考虑找我远程扩容,只要能连上电脑的,20分钟即可搞定。最好是去酷安联系我,CSDN不一定回复
4.少数手机system分区不在“总设备节点”里面,而是在其他设备节点里面,这种情况我也很无奈,本文也帮不了你。
5.有些手机是AB分区但不是动态分区,这种就得把两个system分区都扩大一次,到时候刷入也得两个分区都刷一次()
幸运的是这种手机我只遇到过一台,只能说
基本原理
在普通的扩容方法中,如果system和userdata中间间隔多个分区,则会删除中间所有分区然后重新一个一个建立。理论上这是可行的,但光是备份还原就已经难住了大多数机油,且没这个必要。
为了绕开删除中间分区的步骤,这篇教程只需要删掉旧system分区和旧userdata分区,然后在旧userdata分区起始位置划分新system分区,在新system分区截止位置划分新userdata分区。
这样做唯一缺点就是硬盘可用空间损失掉旧system分区的那一块,但是现在的手机基本上都128GB起步,你又不缺这三四个GB的空间。
扩容准备
Windows 7及以上的电脑,手机,数据线两根(防止中途线坏了变砖救不回来),可供手机充电的交流电源以及充电头
你的手机对应的第三方rec
如果有任何疑问请翻阅教程末尾的[常见疑难解答]
开始扩容
示范设备:
华为荣耀畅玩5X、Windows 11 22H2 专业版
不要笑我,我正在用畅享8Plus写这篇文章,所以没法拿来做示范,就只能默默掏出2015年的2+16GB的荣耀5X做示范了...
1.手机重启到第三方rec
如果没有刷入过第三方rec,你需要在fastboot模式连接电脑,在命令行输入
fastboot flash recovery <文件路径>
特别地,华为设备大多命令是fastboot flash recovery_ramdisk <文件路径>。
注意<文件路径>前面有个空格!
文件路径可以右键复制,也可以直接将文件拖入窗口。
命令行的打开方式是:下载ADB工具箱并解压,双击“启动命令行”。
刷完之后,进入第三方rec。(如何进入自己百度,每个机型不一样)
2.将parted推送到手机
1.进入第三方rec之后,连接电脑,输入
adb devices
如果显示出设备序列号和recovery字样则连接成功,如果没有请检查数据线,接口,驱动等等。
2.输入
adb push <parted文件位置> /sbin
注意<parted文件位置>不能有中文,建议从C盘根目录拖入,且它的前后都有一个空格!
3.输入
adb shell
umount /data
umount /system
umount /dev/block/by-name/userdata
umount /dev/block/by-name/system
chmod 755 /sbin/parted
cat /proc/partitions
如图所示,对于我的这台机器来说mmcblk0这一项是“主设备节点”。
每个机型主设备节点不一样!但是,每个机型的主设备节点对应的数字是很突出的,像上图就明显看到数字15392768是比其他项大得多的,所以你也需要自己找到符合这种情况的那一项。
除了mmcblk0,常见的总表有sda,sdb,sdc等等。
3.打开主设备节点
1.输入
parted /dev/block/主设备节点
p
2.如果显示“...so that will be used.(OK/Cancel)”则输入
o
就会显示上图
如果显示和上图很不一样,那就是弄错了某一步,再检查一下。
4.删除旧的system和userdata分区
注意:之后任何报错都不要管,直接确定/忽略
1.先找到system和userdata所在分区位置,然后截图,一定要记得截图!
不截图待会你就开不了机了
如上图,我这个机器的system是24号,userdata是26号,所以我输入
rm 24
rm 26
每个机器相应号数不一样,自己看清楚再输入
2.如上图,如果删除userdata时报错,不管他,直接输入y和i。如果没报错自然好。
5.建立新的system和userdata分区
现在我们把截图翻出来
如上图
橙色是旧userdata分区头
黄色是旧userdata分区尾
所以新system分区头是4144MB
如果我希望新system分区大小为6GB左右
则新system分区尾是10000MB
即10000-4144=5856MB≈6GB
所以输入
mkpart system ext4 4144MB 10000MB
接下来建立新userdata分区。由刚刚的截图可知,新userdata分区尾应该和旧userdata分区尾保持一致,所以输入
mkpart userdata ext4 10000MB 15.8GB
如上图,如果报错依然忽略
6.刷新分区表检查结果
输入
p
如上图,system已成功扩容到5856MB
现在,输入q退出parted
7.fastboot修复分区表 (可选)
注意,如果之前的步骤没有报错,直接执行第八步,不要执行这一步。
1.进入fastboot(不同机型进入方法不同,自己百度)
2.输入
fastboot erase system
fastboot erase userdata
8.重启到rec进行格式化
在rec更改data和system文件系统为ext4格式,然后更改data文件系统为f2fs格式。
9.扩容成功
常见疑难解答
Q:手机连接电脑后,电脑上识别不了手机或者显示未连接?
A:
①检查数据线是不是好的,接口是不是好的,重启系统
②如果你使用Windows10系统,请在[Windows更新][可选更新][驱动程序更新]里面检查一下有没有相关的更新。Windows11可能需要在[高级选项]里面的[可选更新]才可以找到。
③有些系统需要关闭“程序兼容性助手”,这个东西在win10/11叫“内核隔离”。具体怎么关自己百度。
④打开设备管理器,连接手机看下有无黄色感叹号之类,如果有,双击它并点击更新驱动程序,选择Android ADB Interface之类的,然后等待它安装完成。
⑤有的rec连不上电脑,这种情况下你可以考虑在rec的终端扩容,就是输入adb shell之后的事情都在rec里面完成,然后重启到fastboot继续之后的步骤。
⑥如果还是不行,请换电脑。
————————————
Q:System分区没有解锁怎么办?
A:扩容不需要解锁system,你想多了😅
————————————
Q:救砖包/官方包哪里下?
A:奇兔刷机线刷大师/万维论坛/Onfix/手机品牌对应的官网/手机型号对应的酷安话题/百度等等
————————————
Q:支持动态分区还需要扩容吗?
A:不用。直接进fastbootd刷GSI就可以了。
————————————
Q:楼主何时帮我的EMUI设备在线扩容?
A:看酷安主页的活跃时间,很久不活跃请直接酷安私信留言。
结语
各位大佬如果发现文章的问题希望能及时提出来~