1. 程式人生 > >Linux根檔案系統製作

Linux根檔案系統製作

1 開發環境

    宿主機:Ubuntu14.04(32bit)

    開發板:Mini2440

    Kernel:2.6.39.4

    BusyBox:1.24.2

2 建立目錄

(1)建立根目錄rootfs,這個目錄就是要移植到Mini2440開發板的目錄:

mkdir rootfs
(2)進入rootfs並建立目錄bindevetcusrlibsbinprocusr/binusr/sbinusr/lib
cd rootfs
mkdir bin dev etc usr lib sbin proc
mkdir usr/bin usr/sbin usr/lib

    注:bin

sbin可不建立,在下面安裝BusyBox時會自動建立。

3 交叉編譯並安裝BusyBox

4 構建etc目錄

    根據參考資料[2]的提示,可以參考BusyBox 原始碼中的 examples/bootfloppy/etc目錄建立嵌入式Linux系統的etc目錄。或者直接下載這個預先製作好的etc.tar.gz

5 構建lib目錄

    該目錄中的內容不是必須的,製作ramdisk根檔案系統時(詳見《Mini2440 ramdisk根檔案系統》),為了減小體積,該目錄為空即可。

5.1 安裝核心模組

    編譯好Linux核心之後,執行如下命令將核心模組安裝到rootfs/lib中:

make modules_install ARCH=arm INSTALL_MOD_PATH=/home/liyihai/mini2440/rootfs
    完成之後,將會在rootfs/lib目錄中生成一個modules目錄,裡面包含了特定版本核心的模組內容。

5.2 安裝編譯庫

    將交叉編譯工具中的庫檔案複製到該rootfs/lib目錄即可。

6 製作映像檔案

    根據需要,可知將上述內容打包成不同型別的映像檔案,例如YAFFS2,JFFS2等。

6.1 YAFFS2映像製作

./mkyaffs2imge mini2440/rootfs mini2440_rootfs.img

6.2 RamDisk映像製作

參考資料