手動掛接NFS
環境:
單板:s3c2440 核心:Linux-2.6.22.6 U-boot1.16 初始根檔案系統Yaffs2
前提條件
1. 開發板上要燒寫好檔案系統
2. 能正常開機進入Linux系統
3.uboot中啟動引數類似於 bootargs=noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0
(最好是除NFS之外的檔案系統啟動,如果已經設定了NFS啟動,但是失敗了,無法正常開機,建
先設定U-Boot啟動引數如上,save儲存,再重新燒寫根檔案系統,讓開發板正常進入系統)
步驟:
1.搭建(下載)、配置和重啟NFS伺服器
2.Ping 通伺服器
3.執行掛載命令
1.搭建(下載)、配置和重啟NFS伺服器
下載:sudo apt-get install nfs-kernel-server
配置:sudo vi /etc/exports 目的是為了允許此目錄能被別人掛接
在檔案中新增
/work/nfs *(rw,sync,no_root_squash)
/var/lib/tftpboot *(rw,sync,no_root_squash)
其中/work/*** 為你自己想共享的目錄
然後儲存,重啟NFS伺服器或者Ubuntu(如果不重啟,配置不會生效),命令如下:
sudo /etc/init.d/nfs-kernel-server restart
現在NFS伺服器就可使用了。
2.Ping通伺服器
開發板正常進入Linux系統
ifconfig 檢視IP以及網絡卡號,若與伺服器不在同一網段,修改IP
ifconfig eth0 xxx.xx.xx.x
Ping一下伺服器,測試一下資料是否傳輸正常
3.執行掛載命令
在開發板上執行掛載命令
mount -t nfs -o nolock,vers=2 10.101.15.2:/work/nfs /mnt
解釋下引數:
mount :掛載命令
nfs :使用的協議
nolock :不阻塞
vers : 使用的NFS版本號
IP : NFS伺服器的IP(NFS伺服器執行在哪個系統上,就是哪個系統的IP)
/work/nfs: 要掛載的目錄(Ubuntu的目錄)
/mnt : 要掛載到的目錄(開發板上的目錄,注意掛載成功後,/mnt下原有資料將會被隱藏,無法找到)
進入/mnt目錄,檢視檔案,就可以看見Ubuntu伺服器中的檔案
推薦這種方式,因為簡單。隨時想掛載就掛載,Ubuntu系統即使不開機(前提是ubuntu ip沒變)也不影響開發板的啟動。
若使用NFS作為根檔案系統來啟動 ,若Ubuntu未啟動或者檔案系統有問題,開發板根本無法開機,嚴重影響體驗。
使用NFS作為根檔案系統來啟動及其注意事項
詳見連結:【教程】NFS掛載那些事
文章大部分參考百問網公眾號文章:【教程】NFS掛載那些事