如何對system.img和userdata.img解包,再重新打包


下載代碼倉儲 https://android.googlesource.com/platform/system/extras:

git clone https://android.googlesource.com/platform/system/extras

選擇對應的版本:

cd extras
git checkout android-4.1.1_r1

編譯 simg2img:

cd ext4_utils
gcc -o simg2img -lz sparse_crc32.c simg2img.c

拆包android鏡像文件:

cd ../../
./extras/ext4_utils/simg2img system.img system.raw.img
./extras/ext4_utils/simg2img userdata.img userdata.raw.img

通過mount掛載鏡像(Mac osx系統可以使用Paragon's ExtFS):

mkdir /mnt/my_system /mnt/my_userdata
mount -t ext4 -o loop userdata.raw.img /mnt/my_userdata

編譯 make_ext4fs:

cd extras/ext4_utils
gcc -o make_ext4fs -lz make_ext4fs_main.c make_ext4fs.c ext4fixup.c ext4_utils.c allocate.c backed_block.c output_file.c contents.c extent.c indirect.c uuid.c sha1.c sparse_crc32.c wipe.c

重新打包鏡像:

cd ../../
PATH="$PATH:$(pwd)/extras/ext4_utils/make_ext4fs" ./extras/ext4_utils/mkuserimg.sh -s /mnt/my_system_dir my_system.img ext4 /tmp 512M

原文轉自:http://www.yinqisen.cn/blog-270.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM