在Android 9.0,能对system分区进行操作,提示没有写权限,为只读文件系统Read-only file system,并且adb root->adb remount时,adb remount会报错。
解决方法如下
.执行如下命令
- adb root
- adb disable-verity
(最新的adb 工具包才支持adb disable-verity命令,比如我ubuntu 14.04的/usr/bin下的adb就没有该命令,因为此时adb version是Android Debug Bridge version 1.0.31,后来同事发给我adb(Android Debug Bridge version 1.0.40),该adb工具包含该命令,可以运行该命令) - adb reboot 重启设备
(只要不刷机,以上步骤执行一次就行) - adb root
- adb remount
现在可以对system分区进行读写了
原因:
只知道执行了adb disable-verity, adb reboot之后就能够remount成功,但是adb disable-verity具体做了什么呢?
官方给出adb disable-verity的解释是这样的:disable dm-verity checking on USERDEBUG builds
大致意思就是不使用dm-verity验证userdebug版本.可以理解为userdebug版本有些system分区被verity标识.
所以会出现上述错误是因为某些分区被系统标识,必须要验证数据签名,我们只需要忽略验证就行了.