在android P版本上若是按照「
FAQ18076 android 6.0 M userdebug版本執行adb remount失敗」的作法在userdebug版本上執行adb remount會提示如下錯誤:
remount of the / superblock failed: Permission denied
remount failed
remount failed
緣由是android P版本後google啓用avb(
Android Verified Boot)2.0,verified boot and DM-verity默認啓用策略發生了變化。詳情以下:
DM-Verity behavior changes from vboot1.0 to avb2.0.
On vboot1.0, dm-verity is turned off on eng build and is enabled on userdebug/user build.
DM-verity could be disabled with adb (not fastboot) on userdebug build without unlocking device first.
DM-Verity could not be disabled on user build.
On avb2.0, dm-verity behavior are the same on all build variants.
It’s turned on by default and could only be disabled after device is unlocked.
dm-verity disable flag is moved from system image dm-verity metadata(vboot1.0) to vbmeta image(avb2.0), and you have two ways to disable it: adb and fastboot.
DM-verity could be disabled with adb (not fastboot) on userdebug build without unlocking device first.
DM-Verity could not be disabled on user build.
On avb2.0, dm-verity behavior are the same on all build variants.
It’s turned on by default and could only be disabled after device is unlocked.
dm-verity disable flag is moved from system image dm-verity metadata(vboot1.0) to vbmeta image(avb2.0), and you have two ways to disable it: adb and fastboot.
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
[SOLUTION]
* Android P + kernel-4.4 or kernel-3.18
– download preloader with verified boot disabled which location is the same as scatter file //preloader_<PROJECT>_SBOOT_DIS.bin
– download preloader with verified boot disabled which location is the same as scatter file //preloader_<PROJECT>_SBOOT_DIS.bin
![](http://static.javashuo.com/static/loading.gif)
– adb root
– adb disable-verity
– adb reboot
– adb root
– adb remount
* Android P + kernel-4.9 or after
– download preloader with verified boot disabled which location is the same as scatter file. //preloader_<PROJECT>_SBOOT_DIS.bin
– boot to Home Screen
– go to setting -> system -> Developer options -> OEM unlocking
– adb reboot bootloader
– fastboot flashing unlock
– press volume up key
– fastboot reboot
– adb root
– adb disable-verity
– adb reboot
– adb root
– adb remountlinux
After Android P, preloader_<PROJECT>_SBOOT_DIS.bin will be generated automatically after building preloader.
* 請注意下載最新的adb/fastboot tool
Windows
https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Mac
https://dl.google.com/android/repository/platform-tools-latest-darwin.zip
Linux
https://dl.google.com/android/repository/platform-tools-latest-linux.zip
https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Mac
https://dl.google.com/android/repository/platform-tools-latest-darwin.zip
Linux
https://dl.google.com/android/repository/platform-tools-latest-linux.zip