recovery: ASCII cpio archive (SVR4 with no CRC)——cpio格式的recovery解压缩和重新打包的方法

news/2024/12/29 14:30:56/

         中兴U930HD手机CPU采用的是联芯科技的LC1810,该平台系统的recovery.img 和boot.img 的打包格式跟其他平台(如高通、MTK、英伟达等)不一致,研究了半天终于将930HD的recovery替换了,步骤如下

1、用第三方工具root手机之后,采用dd命令导出recovery.img到sd卡

adb shell

su

dd if=/dev/block/platform/comip-mmc.1/by-name/recovery of=/sdcard/recovery.img

导出后发现只有1M左右的大小,理论上按照android标准格式应该有6 M以上,甚至10多M,奇怪了。。。。。。

到Linux环境下,采用 file命令查看文件格式

file recovery.img
//输出

recovery.img: gzip compressed data, was "recovery", from Unix, last modified: Wed May  7 09:25:06 2014

原来这个img是个gzip的压缩包,那就好办了,解压缩来看看到底什么东东。。。


2、解压缩recovery.img

gunzip -S .img recovery.img  //因为后缀不是.gz,所以用-S 选项

 在当前目录下生成新的recovery文件,在用file命令查看

file recovery

recovery: ASCII cpio archive (SVR4 with no CRC)

原来是一个cpio格式的文件

怎么样,心里是不是暗自得意了?有戏了。。。。

再次解压cpio文件

先创建一个recovery_ok的目录

mkdir recovery_ok

cd recovery_ok

cpio -i -F ../recovery

ls -al 命令查看发现里面的目录结构就是根文件系统ramdisk的结构。

从这里大概就知道了,原来联芯方案的recovery.img仅仅是包含了ramdisk,而没有包含kernel。

接下来替换掉sbin目录下的recovery二进制程序。


3、重新打包生成recovery.img

也就是个逆过程,首先用cpio命令,再用gzip命令

find . | cpio -o -H newc > ../recovery

3009 blocks

gzip -c recovery > recovery.img 

这个recovery.img就是我们最新生成的recovery,用adb命令重新烧写到手机里即可体现,具体烧写过程请参考博文

Android 采用fastboot刷system.img boot.img recovery.img


http://www.ppmy.cn/news/345852.html

相关文章

报错:HttpMessageNotReadableException: JSON parse error: Unexpected end-of-input

问题: 测试接口发送请求时后端报错:org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Unexpected end-of-input: expected close marker for Object (start marker at [Source: (PushbackInputStream); line: 1,…

Springboot 集成Druid

Springboot 集成Druid Druid是Java语言中最好的数据库连接池。Druid能够提供强大的监控和扩展功能。本篇主要讲解一下 Springboot中如何集成 Druid &#xff01; ​ 1.添加Druid依赖 <dependency><groupId>com.alibaba</groupId><artifactId>druid-s…

c++实现单门课程成绩管理系统

实验内容 实现一个单门课程成绩管理系统。进入系统时,用户可选择身份: 1.教师; 2 学生。 以教师身份进入后,如果上次已保存了数据,可将文件中数据读取出来,并 允许修改或添加新数据。如果为第一-次录入 (之前无保存的数据),则允许 教师. 录入相关数据。具体功能包括:…

6.12黄金何时走出区间震荡?后市如何布局

近期有哪些消息面影响黄金走势&#xff1f;下周黄金多空该如何研判&#xff1f; ​黄金消息面解析&#xff1a;周一(6月12日)亚市盘中&#xff0c;现货黄金维持震荡&#xff0c;金价现报1960美元/盎司。本周黄金交易员将迎来美国CPI数据以及美联储利率决议&#xff0c;预计将对…

HTTP的缓存策略-强制缓存与协商缓存

Definition&#xff1a;HTTP的缓存策略指的是控制浏览器或代理服务器缓存哪些资源、以及如何使用和存储这些资源的规则。 常用的HTTP缓存策略包括&#xff1a;强制缓存、协商缓存、禁止缓存、条件缓存等策略。 本文只介绍其中最为常用的强制缓存与协商缓存。 强制缓存 Intro…

【更新日志 v3.5.1】WRITE-BUG数字空间

保存草稿功能失效 文件贴标签功能失效 ⚙ 功能优化 圈子排序优化 ✅ v3.4.1 更新日志 2023年4月11日 &#x1f60e; 新增功能 内容分页 加载更多学习圈功能 &#x1f47e; bug修复 修复标签hover消失 批注抖动bug 编辑器bug 列表显示全部成员 系统通知修复 代码仓库显示问题 ⚙…

FineReport 连接mysql报错 当前驱动加载路径...

报错内容&#xff1a; 原因为帆软自带的jar包与当前使用的mysql&#xff08;8.0&#xff09;版本不一致&#xff0c;需要去官网下载对应连接的jar包 官网下载地址… 下载后在帆软对应路径替换掉jar包即可 FineReport_11.0\webapps\webroot\WEB-INF\lib

计算机cpu多大,电脑的cpu频率多少算正常

电脑的cpu频率多少算正常&#xff1f;最近有小伙伴新入手了电脑&#xff0c;但是有很多数值都搞不清楚&#xff0c;比如电脑的cpu频率多少才正常&#xff1f;其实这个也需要看情况&#xff0c;那么接下来小编打你看看电脑的cpu频率多少才正常&#xff01; 1、CPU频率是2.8-3.0G…