partition has unexpected contents概率性问题处理

Python数据科学工程化:从可运行到可交付的四大隐性能力 在工业级数据科学实践中,'能跑通模型'只是起点,真正决定系统可靠性的是一套融合环境确定性、数据不可变性、服务可控性与实验可复现性的工程能力体系。这涉及Python生态中关键机制的深度理解——如依赖哈希锁定保障环境一致性、pathlib与pydantic构建跨平台契约、concurrent.futures实现延迟敏感型推理编排、以及dvc+seeds组成的全栈确定性协议。这些能力不体现在语法教程中,却直接决定模型能否安全上线、故障能否分钟级定位、团队协作是否高效低歧义。本文聚焦真实生产场景下的Python高阶 阅读详情

partition has unexpected contents问题,这类我们一般按刷机流程或者编译流程不对进行处理,不过也有概率性出现不匹配的情况,大概接触了几次,找到了大概的解决方案

1、先看last_log
partition has unexpected contents

[  159.613007] failed to read blocks for diff

[  159.613190] failed to execute command [bsdiff 32488110 27943 8f2f3c9c7b1c2d300acba5a4cb615040db6a0ceb c79b8b53d58a8c343a92623f047865e796b4f53d 424,1,144,145,297,32673,32674,32675,32676,32677,32678,32679,32680 ......

 

transfer.list 中执行bsdiff的时候出错了,能查出来这个报错是那个文件是最关键的,顺藤摸瓜

 

首先要理解这一行的意思是什么,之前的文档中提到过

bsdiff 0 3169086 ffc645d03fa4f56e72fefa872b792a76c26f9bb44bc0c9ddf123d54a04c800824c0951873e195ef1 2,295583,311859 16290 2,295583,311873

 

格式:"cmdname" +"patch offset" + "patch length" + "source hash" +"target hash" + "tg block pos" + "sourceblocknum" + "source block pos"

 

解析:读取源block区间数据(block 295583至block 311873,hash值为 ffc645d03fa4f56e72fefa872b792a76c26f9bb4),与system.patch.dat文件里偏移量为0,长度为3169086的数据进行bsdiff差分算法运算,生成的新数据存储至目标块区间blokc 295583至block 311859(hash值为4bc0c9ddf123d54a04c800824c0951873e195ef1)。

 

2、查询具体报错文件

 

起初我是想通过8f2f3c9c7b1c2d300acba5a4cb615040db6a0ceb hash值去查询,但是transfer.list中的这个hash其实是block区间,所以其实查不出什么信息

 

查看了做包的log发现,其实log输出中会有每个文件的bisdiff区间

       306   17137664 (  0.00%)  bsdiff /system/lib/libstagefright_foundation.so 373440-373473 406117-406150

    20851   17137664 (  0.12%)  bsdiff /system/lib/libstagefright_soft_hevcdec.so 374049-374168 406725-406844

     4719   17137664 (  0.03%)  bsdiff /system/lib/libstagefright_soft_mpeg4enc.so 374272-374312 406948-406988

 

输出打印的代码如下:

        print("%10d %10d (%6.2f%%) %7s %s %s %s" % (

             xf.patch_len, tgt_size, xf.patch_len * 100.0 / tgt_size,

             xf.style,

             xf.tgt_name if xf.tgt_name == xf.src_name else (

                 xf.tgt_name + " (from " + xf.src_name + ")"),

             xf.tgt_ranges, xf.src_ranges))

所以我们可以根据打印出错的区间去做包log里面搜索下,就可以查询出具体报错的文件,那么接下来的处理就比较简单,

 

3、整包升级该文件

将APK整个升级,不做差分处理,就可以解决这个问题,

    if "__NONZERO" in tgt_name:

      self.style = "new"

 

其实这种方法不是很严谨,也不是很准确,不过目前遇到两次类似的,都得到了解决

解决boot分区无法升级问题 file "/system/bin/install-recovery.sh" doesn't have any of expected sha1 sums; checking cache failed to stat "/cache/saved.file": No such file or directory failed to load cache file script aborted: "/system/bin/install-recovery.sh" has unexpected contents. 立即下载

相关推荐

关于android7.1 做ota差分升级提示没有install-recovery.sh的方法(看不惯收30分的做法)

差分升级,pach 文件,没有提示,呵呵呵呵呵呵,哈哈哈哈哈

Android recovery分析(二)---增量升级包的编译流程

Android recovery分析(二)---增量升级包的编译流程

mrcc_yy的博客 9274

从轻量化到高精度:3DXML 转 STP 的工程数据升级技术指南

本文详细解析了3DXML转STP格式的工程数据升级技术,对比了两种格式在轻量化和高精度方面的特性差异,并提供了CATIA、FreeCAD及Python编程等多种专业级转换方案。通过实际案例展示了如何确保转换过程中的数据精度,适用于CAD设计、精密制造等场景,帮助工程师实现工程数据的高效升级。

weixin_29201859的博客 215

recovery代码分析(六)

前面分析了move命令的实现,这里在简单的分析一下diff命令: static int PerformCommandDiff(CommandParameters &params) { // <offset> <length> if (params.cpos + 1 >= params.tokens.size()) { LOG(ERROR) << "missing patch offset or length for " &lt

我是Timothy 746

【雷达信号处理实战】从原理到代码:脉冲多普勒(PD)处理全流程解析与MATLAB仿真

本文深入解析了脉冲多普勒(PD)雷达信号处理的核心原理与全流程。通过剖析多普勒效应、脉冲压缩与慢时间FFT等关键技术,并结合详细的MATLAB仿真代码,手把手指导如何从信号建模、回波模拟到最终生成距离-多普勒谱,实现运动目标的精确测距与测速,直观展示了相参积累带来的显著性能增益。

pca5navigator的博客 954

STM32H750VBT6在Keil5下载报错?三步搞定Flash Download Failed Cortex-M7问题

本文针对STM32H750VBT6在Keil5开发环境中常见的“Flash Download Failed Cortex-M7”下载报错问题,提供了系统性的三步解决方案。核心在于理解该芯片128KB内部Flash的特殊性,并详细指导用户检查更新Device Pack、精确配置Flash下载算法地址(0x08000000, 0x20000)以及进行硬件连接验证,从而快速修复调试器与芯片间的Flash操作协议问题。

weixin_29274969的博客 480

OTA升级遇到的问题E3005 E1004

最近OTA升级又遇到了新的问题 设备是userdebug版本. 刚刷完机测试是OK的能正常使用差分包进行升级,遇到一台设备测试都不行 没办法只能查问题,先导出了recovery的log adb root && adb pull /cache/recovery/last_log . 查看log发现设备被disable-verity了 [ 1.220055] ro.boot.veritymode=disabled 然后vbmeta的digest 也变了 [ 1.2...

yxdspirit的专栏 3638

MATLAB实战:Gardner定时同步算法实现与BER曲线优化指南

本文详细介绍了Gardner定时同步算法在MATLAB中的实现与优化方法,重点解析了算法原理、关键步骤实现及BER曲线绘制中的常见问题解决方案。通过优化参数设置和系统架构,提升数字通信系统的符号同步性能,为QPSK、QAM等调制系统提供实用参考。

weixin_29085865的博客 231

Android M 差分包的制作流程

曾经参考了网上很多制作差分包的流程,结果一直起不来, 最后经过各种摸索和测试,终于在android M 上制作出了可以正常工作Android M 差分包。 希望献给正在迷茫于此的你。Android 差分包(update.zip) 主要用于Android OS 的OTA update。 Android 的OTA 更新主要包含两种更新: 1) FULL OTA 2) Diff OTA 更新。

Qing的专栏 5622

2026.3.10:最新claude code完美解决方案,跳过登录界面,使用国内deepseek-v4-pro进行计费

本文介绍了一种绕过Claude登录界面直接使用国内DeepSeek-V4-Pro服务的解决方案。通过npm全局安装@anthropic-ai/claude-code包,并配置5个关键环境变量:API认证令牌、基础URL(指向DeepSeek服务)、指定模型为deepseek-v4-pro、禁用非必要流量等。文中提供了4张配图辅助说明配置过程,但未展示具体内容。该方案可实现直接计费使用,无需通过官方登录流程。

拥抱具身智能,昇腾Ascend C 6509

Python全栈入门到实战【AI实战篇 01】DeepSeek官方API全流程实战,第一个AI项目前置必备

文章摘要 本文介绍了基于DeepSeek API开发智能助手的前期准备和基础调用流程。内容涵盖: 前期准备:访问DeepSeek官网、完成账号注册与实名认证。 API Key获取:充值并创建API Key,强调密钥安全保存的重要性。 查阅文档:定位官方接口文档中的Python调用示例。 环境配置:安装openai依赖包,配置环境变量存储API Key。 代码编写:使用Python调用DeepSeek API实现基础对话功能。 调试与验证:解决常见问题,确保API调用成功。 适合零基础开发者跟随操作,快速入门

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 3734

android P OTA差分升级时报错记录

在android P版本中制作出了差分升级包和差分降级包,在执行差分升级时报错,日志如下: [ 7.974280] Verifying current system... [ 7.974298] failed to open emmc partition "/dev/block/platform/0.soc/fa507000.sdhci/by-name/boot": **No such file or directory** [ 8.356131] file "EMMC:/dev/bloc

楼中望月 2186

高质量文献综述原来这么写!借助Gemini 3 Pro+四步法,手把手教你写出有逻辑深度的综述

总结与展望先总结现状,说明前人已经做到什么地步了,再指出缺口,前人没解决什么问题、方法有什么局限等等,最后再在这个缺口的基础上,提出你的未来研究方向。当你有个复杂的研究题目,但没办法拆解出关键词,就可以让Gemini 3 Pro来辅助帮你拆解,并帮你写专业的检索式,若是找英文文献,还能帮你将中文关键词翻译成地道的专业术语。做文献笔记,可以建立文献笔记矩阵,可以用Excel建个表格,横向是文献,纵向是关键要素,包括作者/年份、研究问题/假设、理论框架/模型、研究方法/数据来源、核心结论、局限性/Gap。

智能AI让学术科研更容易 992

π0:面向通用机器人控制的视觉-语言-动作流模型

Physical IntelligenceKevin Black, Noah Brown, Danny Driess, Adnan Esmail, Michael Equi, Chelsea Finn, Niccolo Fusai, Lachy Groom, Karol Hausman, Brian Ichter, Szymon Jakubczak, Tim Jones, Liyiming Ke, Sergey Levine, Adrian Li-Bell, Mohith Mothukuri, Suraj

u013250861的博客 56

Python之abbrobotegm包语法、参数和实际应用案例

`abbrobotegm` 是用于控制 ABB 机器人的 Python 接口包,主要通过 EGM(Externally Guided Motion,外部引导运动)协议与 ABB 机器人控制器进行通信,实现对机器人的实时位置控制、状态监控和运动引导等功能。该包适用于需要将 ABB 机器人与外部系统(如视觉系统、传感器等)集成的场景。

王国平的博客 1255

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

升级失败--failed to read block device from header

1 今天用grep过滤manifest下的分支时,少找了一个机型,后来发现是因为manifest文件本身所在分支没有更新导致,以后过滤时一定要先git pull --rebase将最新的提交拉下来 2 选择升级包时选择了一个target_files文件,导致升级失败, 这种错误的log会出现如下信息: I:Update location: @/cache/recovery/b

rockly89的博客 2319

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Failed to read ca…

问题原因:spring版本过低或者jdk版本过高 解决方案: 1.提高使用spring的版本 2.降低jdk的版本

孤海岛主 240

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Android otapackage流程分析三

我们来看下增量升级包流程: 为了能够详细一点说明我这边是弄了几个不同的文件替换然后很好的分析,增量升级包制作要手动执行脚本 例如:./build/tools/releasetools/ota_from_target_files -v -n -i /home/yexiang/MSTAR_Android/yx_bak/aosp_ponkan32-target_files-ANMI-02.70.0

yexiang优快云的专栏 1274

Android OTA 增量升级失败的问题

问题描述 增量升级失败,查看log cat /cache/recovery/last_log Installing update... Verifying current system...file "/system/etc/recovery-resource.dat" doesn't have any of expected sha1 sums; checking cache failed t...

YuZhuQue的博客 3052

OTA升级提示E:signature verification failed签名失败

制作差分包的命令:./build/tools/releasetools/ota_from_target_files -k -i old.zip new.zip update.zip     那么我们如何选择key_path呢?我们在/build/target/product/security/目录下面有很多key文件,那么我们该选择呢?这里MTK平台是由相应的规则的,如下: 我们去查看Pro

从0到1,突破自己 1万+

9.0 ota user版本升级失败,debug升级成功

公司自己做的ota升级apk,下载升级包升级时,提示package compatibility verification failed; 不同的ota apk报的错可能不一样,log应该都是一样的;9.0对权限的管理比较严格。 avc: denied { read } for name=“config.gz” dev=“proc” ino=4026532109 scontext=u:r:syste...

m1126125223的博客 2711

一些常用实用的命令整理

编译命令: 1.make -jX X表示数字,这个命令将编译Android系统并生成镜像,XX表示可以使用到的CPU核数,这在配置好的电脑上特别有用,公司的16核ubuntu服务器执行make -j16只要不到20分钟,而双核PC上需要4个小时! 2.make snod 这条命令将重新生成镜像,消耗的时间很少,类似WinCE的makeimg过程,如果你修改了一些数据文件(如音乐、视频)等...

李标标的博客 723

Android升级联盟再次失败

科技作者汤姆?克莱基特(Tom Krazit)在paidContent.org上撰文分析了为什么“Android升级联盟”难产的原因.克莱基特认为,原因在于首先各厂商手机的硬件配置不同,导致升级不一致;其次各厂商是在根据自己的需要推动Android发展,它们不想移动世界出现像微软控制PC产业那样的局面.   全文概要如下:   在2011年末,试图在Android供应商之中建立

joy 761

几率

每到一个心理目标位,就给自己设一个止损位。 13上买下卖。

我的积累 481

Android Q动态分区相关初步整理

Android 10上刷机使用了super.img,差分包多了dynamic_partitions_op_list,大致查询了下是新增了动态分区,从编译到生成差分包都做了一些修改,本次先整理大致分析,对这个更新点有初步的认识 一、编译方面 1.super.img的生成 通过编译的log可以看到,super.img的生成 make build/make/core/Makefi...

李标标的博客 1万+
上一篇: 高通8.1平台AB升级差分流程问题
下一篇: Android Q动态分区相关初步整理
李标标
博客等级 码龄11年 124粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值