解壓縮和生成ext4文件鏡像 比如:system.img、pctool.img等

本文講述如何解壓和生成system.img以及其它ext4格式相關的文件鏡像

一、必備工具

(以下兩個工具都可以在out\host\linux-x86\bin目錄下找到)

1、make_ext4fs  用來製作ext4鏡像

expected filename after options
make_ext4fs [ -l <len> ] [ -j <journal size> ] [ -b <block_size> ]
    [ -g <blocks per group> ] [ -i <inodes> ] [ -I <inode size> ]
    [ -L <label> ] [ -f ] [ -a <android mountpoint> ]
    [ -z | -s ] [ -J ]
    <filename> [<directory>]


2、simg2img  用來將system.img還原來ext4鏡像(通過make_ext4fs製作的ext4鏡像包含了spare數據,無法以loop方式mount)

Usage: simg2img <sparse_image_file> <raw_image_file>

二、步驟

1.  得到system.img使用file命令查看是否爲ext4。

    $file system.img

    system.img:data       // 說明此img爲make_ext4fs製作的帶有spare數據的鏡像,則需要進行simg2img的轉換。

2. $simg2img  system.img  system.img.ext

   此時可以再次檢測鏡像類型:

   file system.img.ext4

   system.img: Linux rev 1.0 ext4 filesystem data...    //如此說明此img爲ext4文件系統,可以進行loop 掛載了。     

3. $mkdir  system     //創建一個任意名字的目錄用於後面的掛

4. $sudo mount -t ext4 -o loop system.img_ext4 system/

5. .... "隨意"修改system目錄下的文件

6. $./make_ext4fs -s -l 512M -a system system_new.img system    #512M表分區大小 “-a system”表示掛載點爲/system, 第二個system表示system目錄即第3步中創建的文件夾。

7. 新生成的system_new.img就可以用來燒寫了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章