修改 Android rom 获得 root 权限(明远智睿Android 5.1)

背景: 官方提供的 ttymxc0 没有读写权限,但是在app 端 通过 su = Runtime.getRuntime().exec(); 获取不到权限去修改 串口0 的读写权限,用网上提供的几乎所有的root 工具都无法获取root 权限,编译su 命令放置在 /system/xbin 下,重新打包 system.img 也不行,无奈之举。
1.解压与打包另外的一篇文章里也说到过了 ,接下来我们看如何修改
2.在[email protected]:~/my-work/myandroid5.1/out/target/product/myimx6ek_6dq/linux$ 下建立 ramdisk 文件夹,解压 boot-myimx6ek200-6q.img-ramdisk.gz 到ramdisk 文件夹
命令如下:
mkdir ramdisk
chmod 777 ramdisk
cd ramdisk
gunzip -c …/boot-myimx6ek200-6q.img-ramdisk.gz | cpio -i
解压成功可以看到如图:
修改 Android rom 获得 root 权限(明远智睿Android 5.1)
3.修改 init.rc 增加修改ttymxc0 的命令 :
找到on init 标签
修改 Android rom 获得 root 权限(明远智睿Android 5.1)
在on init 下最后一行增加命令如下图
修改 Android rom 获得 root 权限(明远智睿Android 5.1)
保存
4.修改 default.prop 永久获取root 权限
修改 Android rom 获得 root 权限(明远智睿Android 5.1)
保存

5.在当前ramdisk 目录下打包 (在打包前可以删除linux 目录下的 boot-myimx6ek200-6q.img-ramdisk.gz 文件以免产生误解)
命令:
mkbootfs .| minigzip > . ./boot-myimx6ek200-6q.img-ramdisk.gz
在上层目录 linux 下可以看到重新生成的文件
6,打包 boot-myimx6ek200-6q.img 在linux 目录下
命令:./mkbootimg --base 0x14000000 --cmdline ‘console=ttymxc0,115200 init=/init video=mxcfb0:dev=ldb,bpp=32 video=mxcfb1:off video=mxcfb2:off video=mxcfb3:off vmalloc=256M androidboot.console=ttymxc0 consoleblank=0 androidboot.hardware=freescale cma=384M’ --ramdisk ./boot-myimx6ek200-6q.img-ramdisk.gz --pagesize 2048 --kernel ./boot-myimx6ek200-6q.img-zImage - -second myimx6ek200-6q.dtb -o boot-myimx6ek200-6q.img

7.烧写板子,获取root 完成,然后想说一句 真tmd的不容易。