一文了解如何制作rootfs?
8、 創(chuàng)建其他需要的目錄$ mkdir dev etc mnt proc var tmp sys root
9、 添加庫
我們安裝的交叉工具鏈中有我們所需要的可以在開發(fā)板上使用的庫, 將其拷貝到_install目錄下即可:
$ cp /home/linux/toolchain/gcc-4.6.4/arm-arm1176jzfssf-linux-gnueabi/lib/ . -a
修改文件權(quán)限并刪除靜態(tài)庫和共享庫文件中的符號(hào)表
$chmod +w lib
$chmod +w lib
$ rm lib.a(chǎn)
$ arm-none-linux-gnueabi-strip lib
刪除不需要的庫,確保所有庫大小不超過8M
$ du -mh lib/
10、 添加系統(tǒng)啟動(dòng)文件
在etc下添加文件inittab,文件內(nèi)容如下:
#this is run first except when booting in single-user mode.
::sysinit:/etc/init.d/rcS
# /bin/sh invocations on selected ttys
# start an "askfirst" shell on the console (whatever that may be)
::askfirst:-/bin/sh
# stuff to do when restarting the init process
::restart:/sbin/init
# stuff to do before rebooting
::ctrlaltdel:/sbin/reboot
在etc下添加文件fstab,文件內(nèi)容如下:
#device mount-point type options dump fsck order
proc /proc proc defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
sysfs /sys sysfs defaults 0 0
tmpfs /dev tmpfs defaults 0 0
【注意】這里我們掛載的文件系統(tǒng)有三個(gè)proc、sysfs和tmpfs。在內(nèi)核中proc和sysfs默認(rèn)都支持,而tmpfs是沒有支持的,我們需要確保內(nèi)核有tmpfs的支持。
修改內(nèi)核配置:
$ make menuconfig
File systems --->
Pseudo filesystems --->
[*] Virtual memory file system support (former shm fs)
[*] Tmpfs POSIX Access Control Lists
重新編譯內(nèi)核
在etc下創(chuàng)建init.d目錄,并在init.d下創(chuàng)建rcS文件,rcS文件內(nèi)容為:
#。痓in/sh
# This is the first script called by init process
/bin/mount -a 掛載fstab制定的所有文件系統(tǒng)
echo /sbin/mdev > /proc/sys/kernel/hotplug
/sbin/mdev -s
為rcS添加可執(zhí)行權(quán)限:
$ chmod +x init.d/rcS
在etc下添加profile文件,文件內(nèi)容為:
#。痓in/sh
export HOSTNAME=farsight
export USER=root
export HOME=root
export PS1="[$USER@$HOSTNAME W]# "
PATH=/bin:/sbin:/usr/bin:/usr/sbin
LD_LIBRARY_PATH=/lib:/usr/lib:$LD_LIBRARY_PATH
export PATH LD_LIBRARY_PATH
mknod dev/console c 5 1 該文件節(jié)點(diǎn)是必須的
重要:新制作的文件系統(tǒng)尺寸若超出8M,刪除不需要的庫文件,比如c++庫等。
11. 測(cè)試
制作完畢的根文件系統(tǒng)可以讓開發(fā)板啟動(dòng)后通過nfs掛載到ubuntu中,
刪除原先的/source/rootfs$ sudo rm -rf /source/rootfs
將我們新建的根文件系統(tǒng)拷貝到/source/rootfs目錄下$sudo mkdir /source/rootfs
$ sudo cp _install /source/rootfs –a
設(shè)置uboot環(huán)境變量# setenv serverip 192.168.9.120
# setenv ipaddr 192.168.9.233
# setenv bootcmd tftp 41000000 uImage;tftp 42000000 exynos4412-fs4412.dtb;bootm 41000000 – 42000000
#setenv bootargs root=/dev/nfs nfsroot=192.168.9.120:/source/rootfs rw console=ttySAC2,115200 init=/linuxrc ip=192.168.9.233
# saveenv
重新啟動(dòng)開發(fā)板,查看是否能夠正常掛載,功能是否正常

發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
最新活動(dòng)更多
-
即日-9.1立即下載>> 【限時(shí)下載】ADI中國三十周年感恩回饋助力企業(yè)升級(jí)!
-
即日-9.16點(diǎn)擊進(jìn)入 >> 【限時(shí)福利】TE 2025國際物聯(lián)網(wǎng)展·深圳站
-
10月23日立即報(bào)名>> Works With 開發(fā)者大會(huì)深圳站
-
10月24日立即參評(píng)>> 【評(píng)選】維科杯·OFweek 2025(第十屆)物聯(lián)網(wǎng)行業(yè)年度評(píng)選
-
11月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會(huì)
-
12月18日立即報(bào)名>> 【線下會(huì)議】OFweek 2025(第十屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)
推薦專題
- 1 阿里首位程序員,“掃地僧”多隆已離職
- 2 先進(jìn)算力新選擇 | 2025華為算力場(chǎng)景發(fā)布會(huì)暨北京xPN伙伴大會(huì)成功舉辦
- 3 宇樹機(jī)器人撞人事件的深度剖析:六維力傳感器如何成為人機(jī)安全的關(guān)鍵屏障
- 4 清華跑出具身智能獨(dú)角獸:給機(jī)器人安上眼睛和大腦,融資近20億
- 5 特朗普要求英特爾首位華人 CEO 辭職
- 6 踢館大廠和微軟,剖析WPS靈犀的AI實(shí)用主義
- 7 騰訊 Q2 財(cái)報(bào)亮眼:AI 已成第二增長(zhǎng)曲線
- 8 谷歌吹響AI沖鋒號(hào),AI還有哪些機(jī)會(huì)
- 9 蘋果把身家押在Siri上:一場(chǎng)輸不起的自我革命
- 10 騰訊米哈游押寶的中國AI應(yīng)用,正在海外悶聲發(fā)財(cái)