新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式Linux根文件系統(tǒng)Ramdisk的制作過程

嵌入式Linux根文件系統(tǒng)Ramdisk的制作過程

作者: 時(shí)間:2013-11-04 來源:網(wǎng)絡(luò) 收藏
是一個(gè)最小的linux rootfs系統(tǒng),它包含了除內(nèi)核以外的所有l(wèi)inux系統(tǒng)在引導(dǎo)和管理時(shí)需要的工具,包含如下目錄:
bin,dev,etc,home,lib,mnt,proc,sbin,usr,var。還需要有一些基本的工具:sh,ls,cp,mv……(位于/bin目錄中);必要的配置文件:
inittab,rc,fstab……位于(/etc目錄種);必要的設(shè)備文件:/dev/tty*,/dev /console,/dev/men……(位于/dev目錄中);sh,ls等工具必
要的運(yùn)行庫(kù):glibc。

一、在一個(gè)已建好的文件系統(tǒng)上進(jìn)行修改

設(shè)已建立好的文件系統(tǒng)壓縮文件為.gz

1、解壓

#cd .gz所在目錄
#gunzip ramdisk.gz

在解壓后,得到文件系統(tǒng)鏡象文件ramdisk, 覆蓋了原來的壓縮文件

2、鏡象文件掛載

鏡象文件必須經(jīng)過掛載后才能看到文件系統(tǒng)中的各個(gè)目錄和詳細(xì)內(nèi)容

#mkdir /mnt/loop
/mnt/loop 是文件系統(tǒng)要掛載到的目錄
#mount –o loop ramdisk /mnt/loop

3、在掛載目錄/mnt/loop下對(duì)文件系統(tǒng)進(jìn)行操作

#cd /mnt/loop
根據(jù)需要增加、刪減或是修改文件系統(tǒng)的內(nèi)容

4、卸裝文件系統(tǒng)

跳到/mnt/loop目錄外,否則無法卸裝,提示busy
#cd ramdisk所在目錄
#umount /mnt/loop

5、壓縮文件系統(tǒng)

#gzip –v9 ramdisk /*生成ramdisk.gz壓縮文件
這樣就可以測(cè)試ramdisk.gz了。

二、自己建立

1.建立loop設(shè)備的臨時(shí)掛載點(diǎn)

#mkdir /mnt/loop

2.建立文件系統(tǒng)映象

#dd if=/dev/zero of=/tmp/ramdisk bs=1k count=12300

3.mke2fs –F –v –m 0 /tmp/ramdisk

此處-F選項(xiàng)將可迫使mke2fs在文件上運(yùn)行。否則mke2fs會(huì)抱怨/tmp/ramdisk不是個(gè)塊設(shè)備(/tmp/ramdisk文件映象必須是塊設(shè)備文件)。-v 選項(xiàng)指出mke2fs應(yīng)該以verbose模式執(zhí)行,-m 0指出不必在文件系統(tǒng)上為“超級(jí)用戶”保留任何區(qū)塊,因?yàn)樵谇度胧较到y(tǒng)中通常是單用戶系統(tǒng),為“超級(jí)用戶”保留區(qū)塊沒有意義。

4.掛載

#munt –o loop /tmp/ramdisk /mnt/loop
掛載后,在/mnt/loop下就可以對(duì)文件系統(tǒng)的內(nèi)容進(jìn)行操作。

5.cp操作 將需要的文件等復(fù)制到目錄下。

6.卸載

#umount /mnt/loop

7.壓縮

#gzip –v9 /tmp/ramdisk
這樣就可以測(cè)試ramdisk.gz了。


評(píng)論


相關(guān)推薦

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

關(guān)閉