Pixel4刷Lineage OS和root
一、前言
刷机前建议先看看这个视频(玩机必看!带你入坑安卓刷机,小白也能看懂的ROOT基础指南来啦!_哔哩哔哩_bilibili),了解刷机的一些基础知识。pixle刷LineageOS系统的话可以参考:两条命令教你刷入LineageOS,小白也能上手!_哔哩哔哩_bilibili。
二、Pixel4刷LineageOS系统及MindTheGapps
2.1 准备工作
在官网中找对应设备的总页面:Devices | LineageOS Wiki,判断设备是否与页面中手机展示信息相符。

下载
LineageOS的zip和boot.img:LineageOS Downloads下载最新的配套的boot.img和lineage-xxxxxxx-nightly-flame-signed.zip(因为只有最新的🤣)
下载Google apps(MindTheGapps):Google apps | LineageOS Wiki,选择移动版。根据你下的LineageOS的包下对应的(例如Lineage 20安卓版本是13,所以选择MindTheGapps-13xxxx),至于是
arm还是arm64则根据你的手机的CPU架构来选择。在
cmd中使用下列指令查看设备的CPU架构:1
adb shell getprop ro.product.cpu.abi
选择镜像网站下载比较快(另一个网站尝试点击下载是无反应的)

确保电脑端下载了
platform-tools,即在命令窗口中能够使用adb和fastboot指令。手机端开启USB调试模式
在开始操作前,请先阅读一遍官网给的刷机教程(Install LineageOS on flame | LineageOS Wiki)!!!
在开始操作前,请先阅读一遍官网给的刷机教程(Install LineageOS on flame | LineageOS Wiki)!!!
在开始操作前,请先阅读一遍官网给的刷机教程(Install LineageOS on flame | LineageOS Wiki)!!!
2.2 刷入LineageOS
首先在手机端解OEM锁(在开发者选项里),然后电脑端执行下列命令即可解BootLoader锁:
1 | |
解完BootLoader锁之后应该还是在fastboot模式下(没记错的话,如果不是就执行fastboot reboot bootloader),执行下列命令刷入boot.img:
1 | |
这是使用--slot all是因为下面这个原因,当然也可以不添加,倘若报no valid slot to boot,请添加该参数并重新执行该指令(参考:No valid slot to boot - any way to back up data? | XDA Forums (xda-developers.com))。
从Android7开始,引入了新的OTA升级方式A/B System Updates,这种升级方式将boot、system等分区为两套,叫做slot A和slot B。在fastboot模式下可以看到当前使用的是哪个分区。
然后执行下列指令清除用户数据:
1 | |
执行下列指令进入fastbootd模式:
1 | |

选择Enter recovery进入到recovery模式,然后选择Apply update,继续选择Apply from ADB,在手机底部看到ADB Sideload后,就可以输入下列命令刷入lineage系统:
1 | |
这个会卡在47%,不要急,执行完后手机底部会有命令显示Install completed。
刷入lineag系统后,同样的方式进入到Apply from ADB,执行下列命令刷入MindTheGapps:
1 | |
关键的来了!它会报错,如图所示:

不要管它,点击Yes继续安装,可以参考官方文档,如下图所示:

安装成功如图所示:

最后选择reboot system now就大功告成了。
MindTheGapps安装和没有安装的区别如图所示:

三、Pixel4刷root
3.1 准备工作
- 下载
Magisk(https://github.com/topjohnwu/Magisk/releases) - 刷
LineageOS时的boot.img
3.2 刷入root
先通过指令在手机端安装Magisk
1 | |
然后将boot.img导入手机端,指令如下:
1 | |
手机端打开Magisk,点击安装,选择修补boot镜像中的vbmeta,再选择选择并修补一个文件,选择刚才传入的boot.img。

修补后会在boot.img的同文件夹下生成一个magisk_patched_xxx.img文件,把magisk_patched.img传到电脑端,使用下列指令:
1 | |
然后使用下列指令使手机进入bootloader:
1 | |
将修补的boot.img写回boot分区并重启手机:
1 | |
打开Magisk可以发现超级用户和模块可以使用了,即root成功。
四、添加BurpSuite证书
直接安装证书只能安装进用户里,而有些 app 只信任系统的根证书,所以需要将 Burp 的 CA 证书添加到系统根证书里。
首先导出 Burp 的证书,然后执行下面指令:
1 | |
第一行的数字就是哈希值。然后执行
1 | |
用记事本编辑证书,将-----BEGIN CERTIFICATE-----到-----END CERTIFICATE-----的部分(也就是证书部分)放到文件最前面。
执行
1 | |
adb root无效的话,可能是你所刷的系统带有Google API,所以不完全开放root权限,详细可参考创建和管理虚拟设备 | Android Studio | Android Developers (google.cn),关键说明如下:
为确保应用安全并且与实体设备的体验一致,包含 Google Play 商店的系统映像已使用发布密钥签名,这意味着,您无法获得这些映像的提升权限 (root)。
如果您需要使用提升权限 (root) 来帮助您排查应用问题,您可以使用不包含 Google 应用或服务的 Android 开源项目 (AOSP) 系统映像。然后,您可以使用
adb root和adb unroot命令在普通权限和提升权限之间切换:
如果想要完全获取root权限,可以寻找其他工具(暂时没找到能用的),如果只是为了让证书装在系统根证书目录下,可以使用AlwaysTurstUserCerts插件。
接着执行下列命令
1 | |
现在burp的证书就在系统根证书下了。我试了下,重启后这个文件并没有消失,如果消失了就 adb remount, adb shell, cp 与 chmod 四步就行了。
注意!!!在抓包前,先把手机时间调到当前时间,否则可能会出现抓包异常!!!(稀里糊涂的我再次刷机了)