如何确认 fastboot unlock 解锁成功

1、fastboot 模式下按音量上键后是否提示 Unlock Pass...return to fastboot in 3s

2、重启后界面是否显示

orange state
Your deivce has been unlocked and can't be trusted
your device will boot in 5 seconds

3、解锁成功后检查这两个属性会从
[ro.boot.flash.locked]: [1]
[ro.boot.verifiedbootstate]: [green]
变成
[ro.boot.flash.locked]: [0]
[ro.boot.verifiedbootstate]: [orange]

如何确认DM-verity 已关闭

确认已成功关闭dm-verity
adb shell mount

看到vendor 和system分区挂在如下mmcblk0pxx block表示dm-verity已关闭成功
k65v1_bsp:/ # mount |grep data
/dev/block/mmcblk0p35 on /vendor type ext4 (ro,seclabel,relatime,data=ordered)
/dev/block/mmcblk0p36 on /system type ext4 (ro,seclabel,relatime,data=ordered)

如显示挂载到 dm-x 节点 表示dm-verity仍然开启
k65v1_bsp:/ # mount |grep data
/dev/block/dm-0 on /vendor type ext4 (ro,seclabel,relatime,data=ordered)
/dev/block/dm-1 on /system type ext4 (ro,seclabel,relatime,data=ordered)

若不成功可检查 vbmeta, boot, system ,vendor 分区等是否在write protect 区间里

导致adb disable-verity 的flag无法成功写入 到 vbmeta |boot | system | vendor 分区里

参考/vendor/mediatek/proprietary/bootable/bootloader/lk/platform/mt6771/write_protect.c
的set_write_protect 函数

set_write_protect()里面会将proinfo分区设定在power on write protect区域内

为了proinfo分区能写入flag,需要将proinfo分区的power on write protect拿掉
修改方法:
1.全部分区关掉写保护功能
/vendor/mediatek/proprietary/bootable/bootloader/lk/platform/mt6xxx/rules.mk
MTK_POWER_ON_WP := no

2.单独拿掉proinfo分区写保护

ifdef MTK_PERSIST_PARTITION_SUPPORT

if (0 == is_fs_partition_ready_for_wp("persist")) {
dprintf(CRITICAL, "[%s]: persist is fmt \n", func);
sprintf(wp_start, "%s", "persist");
} else {
sprintf(wp_start, "%s", "sec1");//修改这里写保护分区的起始分区,去掉proinfo分区,注意剩下保留分区大小必须8M对齐
}

else

sprintf(wp_start, "%s", "sec1");//修改这里写保护分区的起始分区,去掉proinfo分区,注意剩下保留分区大小必须8M对齐

endif

android 6.0 M userdebug版本执行adb remount失败

[DESCRIPTION]
android 6.0 M版本默认会打开system verified boot,即在userdebug和user版本会把system映射到dm-0设备,然后再挂载。挂载前会检查system分区数据完整性,如果system分区被恶意修改了则不允许挂载system。

[SOLUTION]
userdebug版本如果需要remount system分区来push文件debug,不需要重新编译版本disable dm-verity,只需要执行以下adb命令即可。
adb root
adb disable-verity
adb reboot

重新启动后再执行:
adb remount即可把system分区remount成rw。

贵司向system分区push文件后,请不要再adb enable-verity,否则就会无法开机,因此push文件后,system分区数据就发生了变化。

adb disable-verity/enable-verity 命令只能在userdebug模式下使用。user版本不支持关闭dm-verity。
如果您的adb不支持adb disable-verity命令,请更新android sdk platform-tools到最新版本。

如何确认 fastboot unlock 解锁成功,如何确认DM-verity 已关闭的更多相关文章

  1. [RK3288][Android6.0] 调试笔记 --- 如何确认声卡是否注册成功【转】

    本文转载自:http://blog.csdn.net/kris_fei/article/details/78399875 Platform: RK3288 OS: Android 6.0 Kernel ...

  2. 写了一个迷你confirm弹窗插件,有取消和确认操作处理并支持单个确认使用弹窗和锁屏禁止滚动

    由于项目想精简不想用其他第三方的ui插件,又很需要像confirm等小效果来完善交互,且使用的频率也是相当的高,于是自己造了一个,省时也省力 代码已经粘贴出来,直接复制即可看到效果,高手勿喷,可以相互 ...

  3. 使用Facade模式更新库存、确认订单、采取打折、确认支付、完成支付、物流配送

    Facade模式对外提供了统一的接口,而隐藏了内部细节.在网上购物的场景中,当点击提交订单按钮,与此订单相关的库存.订单确认.折扣.确认支付.完成支付.物流配送等都要做相应的动作.本篇尝试使用Faca ...

  4. SHELL脚本里执行的东西需要多次回车确认,怎么实现自动回车确认?

    写了个自动配置的shell脚本,其中有几行是 …… ./build-key-server ./build-key-client …… 在执行build-key-server和build-key-cli ...

  5. 实战分享:如何成功防护1.2T国内已知最大流量DDoS攻击

    作者:腾讯云宙斯盾安全团队&腾讯安全平台部 引言: DDoS攻击势头愈演愈烈,除了攻击手法的多样化发展之外,最直接的还是攻击流量的成倍增长.3月份国内的最大规模DDoS攻击纪录还停留在数百G规 ...

  6. Linux 系统常用管理命令(精简笔记)

    Linux是一套免费使用和自由传播的类Unix操作系统,下面的笔记是我从鸟菜中摘抄出来的重要命令,并进行了一定的排版,摒弃了一些用不到的乱七八糟的命令,目的是在生产环境中能够快速的定位并查询需要命令的 ...

  7. Windows事件ID大全

    51 Windows 无法找到网络路径.请确认网络路径正确并且目标计算机不忙或已关闭.如果 Windows 仍然无法找到网络路径,请与网络管理员联系. 52 由于网络上有重名,没有连接.请到“控制面板 ...

  8. Windows 错误代码

    Error Messages for Windows http://www.gregorybraun.com/MSWINERR.ZIP Server 4.0 Error Messages   Code ...

  9. SysErrorMessage 函数和系统错误信息表

    在看 API 文档时, 我们经常见到 GetLastError; 它可以返回操作后系统给的提示.但 GetLastError 返回的只是一个信息代码, 如何返回对应的具体信息呢?FormatMessa ...

随机推荐

  1. js无法监听input中js改变值的变化

    $(input).on('change',function(){ }) 当使用$(input).val('...');不会触发它的change事件 解决办法一:在改变它的值后,手动触发input的ch ...

  2. sql server获取查询时间

    declare @d datetime set @d=getdate() /*你的SQL脚本开始*/ /*你的SQL脚本结束*/ select [语句执行花费时间(毫秒)]=datediff(ms,@ ...

  3. 08day 操作命令以及目录结构

    yum /var/log目录(日志文件)两个重要目录:message--记录系统或服务程序运行状态信息 secure--记录用户登录信息 tail -f 查看日志方法    head 查问文件头部

  4. 特征值 特征向量 正交分解 PCA

    无意间想到的,有时间会补充内容. 还记得学线性代数时计算矩阵的特征值和特征向量,然后这个矩阵就可以用这个特征值和特征向量表示. 这样就可以理解成矩阵其实是多个向量拼在一起的,这样就可以将矩阵和向量建立 ...

  5. Git - Windows 下, gitbash 打开资源管理器

    1. 概述 windows 下 gitbash 打开 资源管理器 2. 场景 资源管理唤起 gitbash 步骤 进入目录 鼠标右击 在 弹出菜单 中, 找到 Git Bash Here 结果 打开一 ...

  6. C#中字符串常用方法

    string str = "123@163.com"; int index = str.IndexOf('@'); // 返回3  从左向右第一个@ int index = str ...

  7. 每天进步一点点------如何实现Sobel Edge Detector? (Image Processing) (C/C++)

    使用C與C++/CLI實現Sobel Edge Detector. http://www.cnblogs.com/oomusou/archive/2008/07/23/sobel_edge_detec ...

  8. SniperOJ-as fast as you can-Writeup

    SniperOJ-as fast as you can-Writeup 题目描述: 打开所给的题目地址 很容易可以看出这是一个简单的爬虫问题,爬去网页的信息并post,但在界面及网页源码中均没发现有价 ...

  9. 五分钟学Java:打印Java数组最优雅的方式是什么?

    在逛 Stack Overflow 的时候,发现了一些访问量像‎安第斯山一样高的问题,比如说这个:打印 Java 数组最优雅的方式是什么?访问量足足有 220W+,想不到啊,这么简单的问题竟然有这么多 ...

  10. SPOJ Distinct Substrings

    给定一个字符串,求不相同子串个数.每个子串一定是某个后缀的前缀,那么原问题等价于求所有后缀之间的不相同子串个数.总数为n*(n-1)/2,再减掉height[i]的和就是答案 #include< ...