根檔案系統的製作

2021-08-26 09:54:36 字數 1403 閱讀 7707

靜態檔案系統的製作:

一、建立掛載點ramfs (資料夾)(相當u盤的名字)

二、建立乙個大小6m的檔案initrd(相當與u盤的實體)

dd if=/dev/zero of=initrd bs-=1k count=6144

三、mke2fs -f -v -m 0 initrd

四、掛載檔案initrd到ramfs (相當於插入u盤到電腦)

sudo mount -o loop initrd .../ramfs(ramfs的路徑)

五、busybox的安裝:

1、 修改makefile檔案

2、make menuconfig(出錯時執行:sudo apt-get install libncures5-dev 命令)

選擇靜態

3、make

4、make install

將busybox/_install/下的全部檔案拷貝到ramfs中

六、建立目錄 dev proctmp etc

在dev目錄下建立:sudo mknod console c 5 1

sudo mknod null c 1 3

在etc目錄下建立:inittab fstab/init.d/rcs

inittab

::sysinit:/etc/init.d/rcs

::respawn:-bin/sh

::ctrlaltdel:/sbin/reboot

::shutdown:/bin/umount -a -r

fatab

proc /proc proc defaults 0 0

tmpfs /tmp tmpfs defaults 0 0

/init.d/rcs

#!/bin/sh

ifconfig etho 192.168.10.20

mount -a

七、解除安裝(相當於拔下u盤)

sudo umount ramfs

八、壓縮檔案initrd

gzip -v9 initrd > initrd.gz

九、燒寫initrd.gz到norflash

動態檔案系統的製作:

在靜態的基礎上:

1、重新安裝bosybox ( 記住在make menuconfig中去掉以靜態方式編譯)

2、其他的和靜態的一樣 新增目錄lib

3、將 /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib/ 下的以下檔案複製到lib目錄中

ld-2.8.so ld-linux.so.3 libc.so.6 libc-2.8.so libm.so.6 libm-2.8.so

4、下面的步驟與靜態檔案系統的製作一樣了。。。

製作根檔案系統

製作根檔案系統 目錄實驗內容2 實驗目的2 實驗材料2 實驗工具2 實驗步驟3 1 編譯 安裝 busybox busybox 1.16.0.tar.bz2 3 1.新增動態庫與載入器,5 3.構建 etc目錄,6 3.1建立 etc inittab檔案6 3.2建立 etc fstab檔案7 3....

製作最小根檔案系統

1.dev console dev null 2.init程序 一般 於busybox 3.etc inittab 4.配置檔案指定的程式 5.c庫 1.解壓busybox tar xjf busybox 1.20.0.tar.bz2 2.配置 make menuconfig 設定交叉編譯選項cro...

busybox製作根檔案系統

以前的檔案系統都是同事做好的,今天心血來潮決決定探索一下,沒想到出了問題。makefile 405 mixed implicit and normal rules deprecated syntax makefile 1242 mixed implicit and normal rules depr...