ext4文件系統制作 - make_ext4fs 參數介紹【轉】


本文轉載自:http://blog.csdn.net/u011784994/article/details/53816976

make_ext4fs用於Android平台上制作ext4文件系統的鏡像。用法舉例:

make_ext4fs -l 512M -s -a system system.ext4img system

之后再使用simg2img制作鏡像。

 

有一個問題是,使用這樣制作的鏡像,system分區文件的權限都是預定的,即使先修改system目錄文件權限后在制作鏡像,燒入設備后,其權限仍未改變。關鍵問題在make_ext4fs工具,在制作ext4fs時更改了權限,其依據為system/core/private/android_ilesystem_config.h所定義的權限。

 

查詢make_ext4fs的參數含義,可以了解到這一點。


-l 512M"是分區大小,i9100的system分區是512M;
-s就是生成ext4的S模式制作;
"-a system",是指這個img用於Android系統,掛載點是/system,使用這個參數,make_ext4fs會根據private/android_filesystem_config.h里定義好的權限來給文件夾里的所有文件重新設置權限,如果你刷機以后發現有文件權限不對,可以手工修改android_filesystem_config.h來添加權限,重新編譯make_ext4fs,也可以不使用 “-a system”參數,這樣就會使用文件的默認權限。

如果不使用-a參數,則可。

 

----------------------------------------------------------------------------------------------------------------------

制作ext4文件系統需要使用make_ext4fs命令,例如:

#make_ext4fs -s -l 314572800 -a root -L linux  ./rootfs_qt.img  ./root
執行之后即會將root文件打包成  rootfs_qt.img 文件系統鏡像。
下載: make_ext4fs
-------------
關於各參數的含義
命令行下執行make_ext4fs即可看到使用方式:
root@DingMZ:~#  make_ext4fs
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>]
-------------------------------------------------------------------
-s  就是生成ext4的S模式制作;
-l   314572800  是分區大小;
-a root 是指這個img用於Linux系統 若為-a system即表示為android系統,掛載點即是/system。使用這個參數,make_ext4fs會根據private/android_filesystem_config.h里定義好的權限來給文件夾里的所有文件重新設置權限,如果你刷機以后發現有文件權限不對,可以手工修改android_filesystem_config.h來添加權限,重新編譯make_ext4fs,也可以不使用 “-a system”參數,這樣就會使用文件的默認權限
./rootfs_qt.img  表示在當前目錄下生成鏡像文件。
./root 指定源路徑。


免責聲明!

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



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