woff 發表於 2013-9-10 23:35:43

unyaffs mkyaffs2img 打包解包工具的安裝使用

原文地址:http://eagle0824.iteye.com/blog/1439071
unyaffs的代碼下載地址為:
http://code.google.com/p/unyaffs/downloads/list
或者下載 win32 版本
http://jiggawatt.org/badc0de/android/index.html
注意你需要在cygwin.com下載 cygwin1.dll and cygz.dll (zlib0 package).

------------本文為誰而準備:------------


像我這樣的小白準備的入門級文章,感謝原作者eagle0824,本文在此基礎上又更進一步的做了一些淺顯易懂的解釋。第一次寫博文,不好的希望大家不吝賜教~!!~廢話少說,進正題~

------------廢話------------


Yaffs(Yet Another Flash File System)文件系統是專門針對NAND閃存設計的嵌入式文件系統,目前有YAFFS和YAFFS2兩個版本,兩個版本的主要區別之一在於YAFFS2能夠更好的支持大容量的NAND FLASH芯片。

------------正文------------


我是在Linux操作系統的Ubuntu版本下面操作的,親測,以下皆是,在其他Linux下面應該也可以,有興趣的朋友也可以試試

在Ubuntu裡用瀏覽器,下載unyaffs源碼

http://code.google.com/p/unyaffs/downloads/list 包括三個文件

在「終端」執行以下編譯命令

gcc -o unyaffs unyaffs.c

(ps:打開「終端」方法之一:Ctrl+Alt+T,記得之後要移動到你下載的目錄下面,再執行編譯命令。)

下載mkyaffs2image源碼

http://code.google.com/p/fatplus/downloads/detail?name=yaffs2-source.tar&can=2&q=

解壓後進入utils文件執行(「終端」中執行)

make命令

即可生成mkyaffs2image文件

將unyaffs和mkyaffs2image文件複製到/usr/bin/目錄下,則就可以在其他目錄下直接執行這兩個命令了

具體步驟為:cp /home/yinghuiLee/下載/yaffs /usr/bin

cp /home/yinghuiLee/下載/yaffs2/utils/mkyaffs2img /usr/bin

注意:如果你沒有ROOT權限,可以分別在以上兩行代碼前加上sudo,表示使用ROOT權限來操作。即

sudo cp /home/yinghuiLee/下載/yaffs /usr/bin

sudo cp /home/yinghuiLee/下載/yaffs2/utils/mkyaffs2img /usr/bin

(ps:cp 要複製的文件路徑+文件 複製到的目標文件夾目標路徑)

解壓system.img文件,直接解壓system.img中的文件到當前目錄,因此要想解壓到system目錄,必須先手動創建system目錄

mkdir system

cd system

unyaffs system.img

創建system.img

mkyaffs2image system system.img

------------以下沒有試,有興趣的朋友可以試試------------


還有一個工具解壓壓縮功能都可以實現,而且可以指定文件被解壓到的文件名

yaffs2utils 下載地址為:http://code.google.com/p/yaffs2utils/downloads/list

下載後解壓,進入src目錄執行 make命令即可

壓縮命令為 mkyaffs2 system system.img

解壓命令為 unyaffs2 system.img system(將system.img解壓到system文件中)

通過此工具我們就可以對system.img等android系統升級包進行解壓出來修改

頁: [1]
查看完整版本: unyaffs mkyaffs2img 打包解包工具的安裝使用