Android固件img文件的解包, 修改和打包的命令行操作
Android固件img文件的解包打包
To Unpack-Modify-Pach the system.img, I have followed the following procedure:
a) Unpacking
Run file system.img and make sure that system.img is Android Sparse Image.
Rename system.img to system.img.ext4. // Not required if you will use other name for raw image in below steps.
simg2img system.img.ext4 system.img
you will get a raw image file named system.img
mkdir system
create directory to mount system.img
sudo mount -t ext4 -o loop system.img system/
you will get all files of system.img in system folder
b) Modifying
ls -l system/init.rc
note permissions: 750
sudo chmod 777 system/init.rc
give write permissions
sudo echo "#MODIFICATION " >> system/init.rc
done some modification in init.rc
sudo chmod 750 init.rc
reset init.rc to the noted permissions
c) Calculate system sector size
tune2fs -l system.img | grep "Block size\|Block count"
you will get block size and count
echo $((1553064 * 4096))
multiply both results. I got 6361350144
d) Packing
sudo make_ext4fs -s -l 6361350144 -a system system_new.img sys/
you will get system_new.img “Android Sparse Image” that has all changes
Amlogic固件的解包修改和打包
需要两个工具, 一个是linux下的工具
https://github.com/natinusala/linux-amlogic-toolkit
另一个是windows下的解包和打包工具 Amlogic CustomizationTool
因为前者的打包存在bug, 所以只用于对system.img进行修改, 后者用于最外层的解包和打包工作.
# Mount system RW:
mount -o rw,remount /system
# Mount system RO:
mount -o ro,remount /system
/init.rc 内, 找到 service console 之后添加
service daemonsu /system/xbin/daemonsu --auto-daemon &
class main
oneshot
Android固件img文件的解包, 修改和打包的命令行操作的更多相关文章
- android studio 使用gradle 导出jar包,并打包assets目录
警告:本文年久失修. 随着android studio的升级 ,gradle的升级,严格按照本文的代码去做可能不会成功,希望依然可以作为解决问题的思路. 最近项目在做一个sdk,供别的开发者使用,所以 ...
- [转]--android studio 使用gradle 导出jar包,并打包assets目录
转自: http://www.cnblogs.com/wuya/p/android-studio-gradle-export-jar-assets.html 最近项目在做一个sdk,供别的开发者使 ...
- [原] Android自动打包之命令行打包
Android自动打包流程详细图: 总结为以下几个步骤: 1. 生成R文件 2. Java代码编译成class文件 3. class文件生成dex文件 4. 打包资源 5. 生成apk 6. 创建密匙 ...
- Android SDK 环境的搭建 --图形界面模式和命令行模式
Android 开发首先就是要搭建开发环境,没有用过Eclipse(ADT)开发过,直接用的Android Studio,其中最主要的就是 Android SDK的安装和搭建,所以这里只是总结下And ...
- apk解包——修改后缀为zip
将apk修改后缀为zip后,可直接解包查看资源文件
- Android之zip文件加密解压及进度条的实现
zip文件的解压能够使用java的zip库,可是没有实现对加密文件的解压功能,这里能够使用zip4j来实现.详细能够參看该文<Android下zip压缩文件加密解密的完美解决方式>.该文件 ...
- 【Mac + Android】之Android Studio 环境搭建,AVD模拟器运行(包括:命令行运行AVD,并且Genymotion模拟器插件配置运行)
目录: 前提.Mac环境下手动配置Android SDK 一. Android Studio下载及配置 二.AVD模拟器配置运行 扩展:命令行运行AVD模拟器 三.在Android Studio 中配 ...
- git命令行操作详解
目录 1.常用操作 1.1 新建代码库 1.2 配置 1.3 remote管理 1.4 添加和撤销操作 1.5 代码提交 1.6 分支操作 1.7 查看信息 1.8 pull操作 1.9 push操作 ...
- Android Stadio配置了gralde的本地路径,但是windos 命令行还是会下载gradle
如下图: 已经在stadio 里面设置了gradle 的路径,但是在cmd 命令行里面不会去用这个路径. 解决方案:需要在环境变量里面设置一个gradle home GRADLE_USER_HOME ...
随机推荐
- mysql 查询当天数据
查询当天数据 select * from tab where FROM_UNIXTIME(fabutime, '%Y%m%d') = 20121217; mysql TO_DAYS(date) 函 ...
- ThinkPHP5中如何实现模板完全静态化
模板完全静态化,也就是通过模板完全生成纯静态的网页,相比动态页面和伪静态页面更安全更利于SEO访问更快.相比前二者各有利弊吧,现在稍微对这三种形式的优缺点对比一下,以及在ThinkPHP5项目中实现完 ...
- python生成图片二维码(利用pillow)
首先 pip install pillow 然后 from PIL import Image from PIL import ImageDraw from PIL import ImageFont i ...
- Mybatis如何插入空字段
出现异常:SQLException : 无效的类型: 1111 使用Mybatis插入一条记录,某字段设为null,出错 尝试将空的mgr属性插入到数据库,解决办法: 添加setting属性jdbcT ...
- Vue开发之项目创建
1.编辑器配置 习惯使用VScode进行开发时,可以安装EditorConfig for Visual Studio Code插件,然后在项目中新建.editorconfig文件,来配置编辑器的使用习 ...
- Unity基础功能:粒子特效(Shuriken)
版权申明: 本文原创首发于以下网站: 博客园『优梦创客』的空间:https://www.cnblogs.com/raymondking123 优梦创客的官方博客:https://91make.top ...
- Cookie 跨域 和 SSO
cookie是不能跨域访问的,但是在二级域名是可以共享cookie cookie的四个可选属性: 1. cookie的生存期属性:expires; 默认情况下,cookie只在浏览器会话期存在.退出浏 ...
- 大数据调度工具oozie详细介绍
背景 之前项目中的sqoop等离线数据迁移job都是利用shell脚本通过crontab进行定时执行,这样实现的话比较简单,但是随着多个job复杂度的提升,无论是协调工作还是任务监控都变得麻烦,我们选 ...
- Windows server服务器入侵检查
基本检查点 检测不正常账户 查找被新增的账号,特别是管理员群组的(Administrators group)里的新增账户. C:\lusrmgr.msc C:\>net localgroup ...
- python应用-工资计算
""" 工资计算 Author:罗万财 Date:2017-6-8 """ salary=float(input('请输入工资:')) in ...