本文基于文章在实践中修改而成:
逆向修改MIUI(X64)内核,反制TracerPID反调试踩坑指南: https://blog.csdn.net/Druke/article/details/80502571
【教程】Nexus、Pixel手机解锁bootloader+刷TWRP Recovery + 刷机(含修改ROM boot.img) + ROOT教程: https://blog.csdn.net/tabactivity/article/details/88355317
1. 在手机上通过Root命令查看Boot分区所在位置:
shell@bullhead:/ $ su
shell@bullhead:/ # ls -al /dev/block/platform/soc.0/f9824900.sdhci/by-name|grep boot
lrwxrwxrwx root root 1971-05-09 09:49 aboot -> /dev/block/mmcblk0p8
lrwxrwxrwx root root 1971-05-09 09:49 abootbak -> /dev/block/mmcblk0p14
lrwxrwxrwx root root 1971-05-09 09:49 boot -> /dev/block/mmcblk0p37
2. 从上面输出可以看出 boot分区在 /dev/block/mmcblk0p37,所以直接用 dd 命令复制即可
root@bullhead:/ # dd if=/dev/block/mmcblk0p37 of=/data/local/tmp/boot.img
65536+0 records in
65536+0 records out
33554432 bytes transferred in 0.578 secs (58052650 bytes/sec)
3. 先给 tmp 目录下的 boot.img 加权限,然后再用adb push 拉倒PC端(原始boot.img 先备份一份,如果修改错误进入 fastboot 重新输入即可)
root@bullhead:/ # chmod 777 /data/local/tmp/boot.img
E:\>adb pull /data/local/tmp/boot.img
/data/local/tmp/boot.img: 1 file pulled. 3.3 MB/s (33554432 bytes in 9.617s)
4. 下载 mkboot 工具包: https://github.com/xiaolu/mkbootimg_tools 。接着,把 boot.img 以及工具包全部放到Linux系统同一个目录下中开始修改,使用 ./mkboot boot.img boot 进行解包(记录一下 mkboot 输出信息,打包会用到)
jack@ubuntu1804:~/mkbootimg_tools$ chmod 755 mk*
jack@ubuntu1804:~/mkbootimg_tools$ ./mkboot boot.img boot
Unpack & decompress boot.img to boot
kernel : kernel
ramdisk : ramdisk
page size : 4096
kernel size : 8902642
ramdisk size : 1346371
base : 0x00000000
kernel offset : 0x00008000
ramdisk offset : 0x02000000
tags offset : 0x01e00000
cmd line : console=ttyHSL0,115200,n8 androidboot.hardwar