1、android檔案系統的結構
android源碼編譯後得到system.img,ramdisk.img,userdata.img映像檔案。其中,ramdisk.img是emulator的檔案系統,system.img包括了主要的包、庫等檔案,userdata.img包括了一些使用者資料,emulator載入這3個映像檔案後,會把 system和 userdata分別載入到 ramdisk檔案系統中的system和userdata目錄下。因此,我們可以把ramdisk.img裡的所有檔案複製出來,system.img和userdata.img分別解壓到ramdisk檔案系統中的system和
userdata目錄下。
2、分離android檔案系統出來
system.img,ramdisk.img,userdata.img映像檔案是採用cpio打包、gzip壓縮的,可以通過file命令驗證:
file ramdisk.img,輸出:
ramdisk.img: gzip compressed data, from Unix, last modified: Wed Mar 18 17:16:10 2009
Android源碼編譯後除了產生system.img,userdata.img之外還產生system和userdata檔案夾,因此不需要解壓它們。Android源碼編譯後還產生root檔案夾,其實root下的檔案與 ramdisk.img裡的檔案是一樣的,不過這裡還是介紹怎樣把 ramdisk.img解壓出來:
將ramdisk.img複製一份到任何其他目錄下,將其名稱改為ramdisk.img.gz,並使用命令
gunzip ramdisk.img.gz
然後建立一個檔案夾,叫ramdisk吧,進入,輸入命令
cpio -i -F ../ramdisk.img
這下,你就能看見並操作ramdisk裡面的內容了。
然後把Android源碼編譯後產生的system和 userdata裡的檔案複製到 ramdisk/system和 ramdisk/userdata下。這樣就得到一個檔案系統了。
?repo ?主要是同步管理所用到的一系列檔案
?bionic ?Android編譯過程所需要的一些庫
?bootable ?負責啟動和備份的一些檔案
?build ?最主要的一些makefile和編譯設定檔
?dalvik ?經過Google最佳化了的java虛擬機器
?development ?開發用的一些檔案夾,包括模擬器和工具等
?external ?Android工程中引入的外部功能庫
?frameworks ?中介軟體部分
?hardware ?和硬體有關的一些支援檔案,包括wifi,電信模組等
?kernel ?經過了最佳化和修改的linux核心
?packages ?所有的上層應用程式套件
?prebuild ?Android編譯工具所在目錄
?system ?一些系統級檔案
1、android檔案系統的結構
android源碼編譯後得到system.img,ramdisk.img,userdata.img映像檔案。其中,ramdisk.img是emulator的檔案系統,system.img包括了主要的包、庫等檔案,userdata.img包括了一些使用者資料,emulator載入這3個映像檔案後,會把 system和 userdata分別載入到 ramdisk檔案系統中的system和userdata目錄下。因此,我們可以把ramdisk.img裡的所有檔案複製出來,system.img和userdata.img分別解壓到ramdisk檔案系統中的system和
userdata目錄下。
2、分離android檔案系統出來
system.img,ramdisk.img,userdata.img映像檔案是採用cpio打包、gzip壓縮的,可以通過file命令驗證:
file ramdisk.img,輸出:
ramdisk.img: gzip compressed data, from Unix, last modified: Wed Mar 18 17:16:10 2009
Android源碼編譯後除了產生system.img,userdata.img之外還產生system和userdata檔案夾,因此不需要解壓它們。Android源碼編譯後還產生root檔案夾,其實root下的檔案與 ramdisk.img裡的檔案是一樣的,不過這裡還是介紹怎樣把 ramdisk.img解壓出來:
將ramdisk.img複製一份到任何其他目錄下,將其名稱改為ramdisk.img.gz,並使用命令
gunzip ramdisk.img.gz
然後建立一個檔案夾,叫ramdisk吧,進入,輸入命令
cpio -i -F ../ramdisk.img
這下,你就能看見並操作ramdisk裡面的內容了。
然後把Android源碼編譯後產生的system和 userdata裡的檔案複製到 ramdisk/system和 ramdisk/userdata下。這樣就得到一個檔案系統了。
?repo ?主要是同步管理所用到的一系列檔案
?bionic ?Android編譯過程所需要的一些庫
?bootable ?負責啟動和備份的一些檔案
?build ?最主要的一些makefile和編譯設定檔
?dalvik ?經過Google最佳化了的java虛擬機器
?development ?開發用的一些檔案夾,包括模擬器和工具等
?external ?Android工程中引入的外部功能庫
?frameworks ?中介軟體部分
?hardware ?和硬體有關的一些支援檔案,包括wifi,電信模組等
?kernel ?經過了最佳化和修改的linux核心
?packages ?所有的上層應用程式套件
?prebuild ?Android編譯工具所在目錄
?system ?一些系統級檔案