NFS服務開啟


一、開啟NFS服務 

使用如下命令安裝 NFS 服務:

sudo apt-get install nfs-kernel-server rpcbind

等待安裝完成,安裝完成以后在用戶根目錄下創建一個名為“nfs”的文件夾,創建的 nfs 文件夾供 nfs 服務器使用,以后我們可以在開發板上通過網絡文件系
統來訪問 nfs 文件夾,要先配置 nfs,使用如下命令打開 nfs 配置文件/etc/exports:

sudo vi /etc/exports

打開/etc/exports 以后在后面添加如下所示內容:

/home/topeet/nfs *(rw,sync,no_root_squash)

添加完成以后的/etc/exports 如圖所示:

重啟 NFS 服務,使用命令如下:

sudo /etc/init.d/nfs-kernel-server restart

二、掛載NFS目錄

如果虛擬機IP地址是192.168.0.2,則開發板可以通過下面命令掛載目標系統:

mount -t nfs 192.168.0.2:/home/topeet/nfs /mnt -o nolock

如果掛載失敗,可能是nfs版本不統一,需要用以下命令掛載:

mount -t nfs -o nolock,nfsvers=3,vers=3 192.168.0.2:/home/topeet/nfs /mnt

三、NFS根文件系統

Linux內核支持從網絡加載根文件系統。使用NFS根文件系統,首先需要內核中網卡驅動已經正常工作,並且在內核已經支持網絡並配置了NFS根文件系統支持,同時將內核參數設置為通過NFS啟動。

設置內核NFS啟動的參數一般格式為:

root = /dev/nfs rw console=$(consolecfg) nfsroot=$(serverip):$(rootpath) ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname):$(device):$(autoconf) 

參數的意義如下:

root=/dev/nfs: 使用網絡文件系統

consolecfg: 調試串口配置

serverip: NFS服務器IP

rootpath: 主機NFS根文件系統路徑

ipaddr: 本機IP(目標系統IP)

gateway: 網關

netmask: 子網掩碼

hostname: 目標板的主機名

device: 網卡設備,默認一個網卡就填eth0

autoconf: 自動連接,填off不自動連接

如“使用調試串口屏ttyS0,NFS服務器IP為192.168.0.2,NFS根文件系統路徑為/home/topeet/nfs,目標板IP為192.168.0.3”的啟動參數配置為:

root=/dev/nfs rw console=ttyS0,115200 nfsroot=192.168.0.2:/home/topeet/nfs ip=192.168.0.3:192.168.0.2:192.168.0.1:255.255.255.0::eth0:off

把文件系統rootfs.tar.bz2復制Linux主機上的/home/topeet/nfs目錄,然后解壓該包: $ tar -xjvf rootfs.tar.bz2 解壓完成后,將得到/home/topeet/nfs/rootfs目錄,這個目錄將用作NFS根文件系統的目錄。

在uboot里設置的方法是:

=> setenv root "/dev/nfs rw console=ttyS0,115200 nfsroot=192.168.0.2:/home/topeet/nfs ip=192.168.0.3:192.168.0.2:192.168.0.1:255.255.255.0::eth0:off"

=> setenv ipaddr "192.168.0.3"

=> setenv serverip "192.168.0.2"

=> saveenv

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM