建構嵌入式LINUX的NFS 新一篇: step by step 建構嵌入式Linux系統平台http://www.bluemcu.com/dvbbs/index.asp?boardid=5
準備工作:
一台裝有REDHAT9.0的PC機,一套LJD2410-I開發闆,PC機上裝有LJD2410的軟體包,假如我
們通過NFS要加載的檔案系統為/LJD2410/root_dir/root_china,
Ifconfig eth0 192.168.1.100 //設定PC機linux的IP:192.168.1.100,
Ifconfig eth0 192.168.1.10 //開發闆IP:192.168.1.10
我們需要重新配置編譯核心,開啟開發闆NFS檔案系統功能,具體步驟如下:
1、 修改kernel/arch/arm/def-configs/smdk2410配置檔案
把CONFIG_CMDLINE="root=/dev/mtdblock2 noinitrd init=/linuxrc
console=ttyS0"這一行改為CONFIG_CMDLINE="root=/dev/nfs rw
nfsroot=192.168.1.100:/LJD2410/root_dir/root_china noinitrd
init=linuxrc console=ttys0 ip=192.168.1.10"
運作make menuconfig進入配置菜單,裝載配置檔案SMDK2410
選擇Load an Alternate Configuration File輸入配置檔案的路徑和檔案名
添加核心對NFS的支援:
選中networking options-》IP:kernel level auloconfiguralion項
選中file systems-》network file systems-》下的root file system on nfs
和nfs file system support
重新編譯核心下載下傳bootloader和kernel到開發闆上,至此,開發闆設定已經完成。
PC機設定:我們必須開啟PC機的NFS服務,具體設定如下:1、 在LINUX指令
符下運作setup,在system services裡面選中nfs服務,然後儲存退出。
2、 設定PC機上的共享目錄執行vi /etc/exports,在裡面添加一
行:/LJD2410/root_dir/root_china (rw),然後儲存退出,/和rw要有空格
(/LJD2410/root_dir/root_china為共享目錄,rw為讀寫權限)。
3、 執行/etc/rc.d/init.d/nfs restart重新開機nfs服務。
4、為了不必每次開機都要啟動nfs服務,我們把/etc/rc.d/init.d/nfs restart
添加到/etc/rc.d/rc.local中,以後PC啟動的時候就會執行此檔案開啟nfs服務。
5、 測試NFS服務:設定完成後可以在本機上進行測試,如果本機IP為192.168.1.100,
則可以用
mount 192.168.1.100:/LJD2410/root_dir/root_china /mnt,如果mount成功,則在/mnt
的目錄就可以看到root_china下面的東西了。
6、 修改root_china/usr/etc/rc.local檔案,設定開發闆IP位址為192.168.1.10
至此,開發闆和PC機的設定都已經基本完成,假如我們在PC機上調試好的應用程式已
經放到/root_china這個嵌入式的檔案系統下面,我們則可以用網絡連接配接好開發闆和PC機,
開發闆上電,系統開始運作并且通過運作nfs網絡檔案系統就可以進入熟悉的linux界面
了。
以後調試程式隻需要把編譯好的程式放到root_china的目錄下面就可以了,開發闆不
再需要燒寫。
轉載于:https://blog.51cto.com/axlrose/1292557