一文了解如何制作rootfs?
8、 創(chuàng)建其他需要的目錄$ mkdir dev etc mnt proc var tmp sys root
9、 添加庫(kù)
我們安裝的交叉工具鏈中有我們所需要的可以在開發(fā)板上使用的庫(kù), 將其拷貝到_install目錄下即可:
$ cp /home/linux/toolchain/gcc-4.6.4/arm-arm1176jzfssf-linux-gnueabi/lib/ . -a
修改文件權(quán)限并刪除靜態(tài)庫(kù)和共享庫(kù)文件中的符號(hào)表
$chmod +w lib
$chmod +w lib
$ rm lib.a(chǎn)
$ arm-none-linux-gnueabi-strip lib
刪除不需要的庫(kù),確保所有庫(kù)大小不超過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,刪除不需要的庫(kù)文件,比如c++庫(kù)等。
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)更多
-
6月20日立即下載>> 【白皮書】精準(zhǔn)測(cè)量 安全高效——福祿克光伏行業(yè)解決方案
-
7月3日立即報(bào)名>> 【在線會(huì)議】英飛凌新一代智能照明方案賦能綠色建筑與工業(yè)互聯(lián)
-
7月22-29日立即報(bào)名>> 【線下論壇】第三屆安富利汽車生態(tài)圈峰會(huì)
-
7.30-8.1火熱報(bào)名中>> 全數(shù)會(huì)2025(第六屆)機(jī)器人及智能工廠展
-
7月31日免費(fèi)預(yù)約>> OFweek 2025具身機(jī)器人動(dòng)力電池技術(shù)應(yīng)用大會(huì)
-
免費(fèi)參會(huì)立即報(bào)名>> 7月30日- 8月1日 2025全數(shù)會(huì)工業(yè)芯片與傳感儀表展
推薦專題
- 1 AI 眼鏡讓百萬 APP「集體失業(yè)」?
- 2 大廠紛紛入局,百度、阿里、字節(jié)搶奪Agent話語權(quán)
- 3 深度報(bào)告|中國(guó)AI產(chǎn)業(yè)正在崛起成全球力量,市場(chǎng)潛力和關(guān)鍵挑戰(zhàn)有哪些?
- 4 一文看懂視覺語言動(dòng)作模型(VLA)及其應(yīng)用
- 5 上海跑出80億超級(jí)獨(dú)角獸:獲上市公司戰(zhàn)投,干人形機(jī)器人
- 6 國(guó)家數(shù)據(jù)局局長(zhǎng)劉烈宏調(diào)研格創(chuàng)東智
- 7 下一代入口之戰(zhàn):大廠為何紛紛押注智能體?
- 8 百億AI芯片訂單,瘋狂傾銷中東?
- 9 Robotaxi新消息密集釋放,量產(chǎn)元年誰在領(lǐng)跑?
- 10 格斗大賽出圈!人形機(jī)器人致命短板曝光:頭腦過于簡(jiǎn)單