色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 牛人業(yè)話 > 嵌入式linux新手入門手記-制作UBI文件鏡像

          嵌入式linux新手入門手記-制作UBI文件鏡像

          作者: 時(shí)間:2015-10-08 來源:網(wǎng)絡(luò) 收藏

            這一篇計(jì)劃是放到最后寫的,但是QT5.4.1移植和TSLIB的修改內(nèi)容比較多,想想就將這篇提前。

          本文引用地址:http://cafeforensic.com/article/281010.htm

            /home/XXXX/nfs下已經(jīng)包含一個(gè)完整的根文件系統(tǒng)了,可以使用這個(gè)文件系統(tǒng)來制作一個(gè)文件鏡像,并將它燒寫到nand中。

            如果沒有根文件系統(tǒng),就需要先獲取或者自己制作一個(gè)。制作根文件系統(tǒng)可以用busybox。不過為了省事,我直接使用TI的SDK中的根文件系統(tǒng),然后自己刪減,得的了一個(gè)大約40M左右的根文件系統(tǒng),在加入tslib,qt5.4.1,以及中文字庫后的大小大約在90M左右。

            制作ubi文件鏡像需要用到mtd-utils工具,目前的最新版本是1.5.1,使用git下載:git clone git://git.infradead.org/mtd-utils.git。

            下載下來的mtd-utils解壓縮后保存到/home/XXXX/mtd-utils目錄。

            編譯mtd-utils還需要一些其他的庫,我們使用apt-get來安裝:

            sudo -s

            apt-get install libzo2-dev

            apt-get install libacl1-dev

            apt-get install uuid-dev

            以及zlib,到www.zlib.net下載zlib的源代碼,保存到/home/XXXX/zlib目錄中,進(jìn)入到這個(gè)目錄中執(zhí)行./configure,成功后執(zhí)行make -j4,make install。

            之后編譯mtd-utils,進(jìn)入到mts-utils目錄中,執(zhí)行make -j4。

            新建一個(gè)目錄/home/XXXX/tools,將這個(gè)目錄加入到PATH環(huán)境變量中,然后將編譯出來的mtd-utils的目標(biāo)執(zhí)行程序拷貝到這個(gè)tools目錄下。

            進(jìn)入到/home/XXXX目錄下,執(zhí)行以下操作:

            mkfs.ubifs -F -q -r ./nfs -m 2048 -e 126976 -c 1599 -o ubifs.img

            -F: 使能"white-space-fixup",通過uboot燒寫nand時(shí)必須要這個(gè)參數(shù)

            -r ./nfs, 我計(jì)算機(jī)上用戶掛載am335x板的nfs根文件系統(tǒng),以這個(gè)目錄中的內(nèi)容制作鏡像文件

            -m 2048, nand的最小讀寫單元,page size

            -e 126976, nand的block size-2*page size

            -c 1599, 文件系統(tǒng)占用的最大block數(shù),一般小于等于nand最大block數(shù)-1,或者根據(jù)文件系統(tǒng)的大小實(shí)際計(jì)算

            -o ubifs.img,輸出文件名

            ubinize -o ubi.img -m 2048 -p 128KiB /home/jerry/tools/ubifs.conf

            -o ubi.img,輸出文件名

            -m 2048, nand的最小讀寫單元,page size

            -p 128KiB, block size

            最后面的ubifs.conf是配置文件:

            [ubifs]

            mode=ubi

            image=ubifs.img

            vol_id=0

            vol_size=120MiB

            vol_type=dynamic

            vol_name=rootfs

            vol_flags=autoresize

            到這里,就生成了一個(gè)ubi.img文件,這個(gè)就是ubi鏡像文件,可以在u-boot中寫入到nand中。

          linux相關(guān)文章:linux教程




          關(guān)鍵詞: 嵌入式linux UBI

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉