使用linux進(jìn)行嵌入式開發(fā)的時(shí)候,為了方便開發(fā),通常是將開發(fā)板掛載到宿主機(jī)的文件系統(tǒng)上,然后將代碼放到共享給開發(fā)板的目錄中,再通過開發(fā)板運(yùn)行。
首先查看是否安裝了 nfs 軟件包,yum list installed | grep nfs。如果安裝,則可進(jìn)行下面設(shè)置。
nfs 服務(wù)器端配置:
1.首先建立共享目錄:在根目錄下建立share目錄。執(zhí)行 mkdir /share
2.然后對 exports 文件進(jìn)行編輯:vim /etc/exports
如果之前沒有通過 nfs 共享過目錄,該文件是空的,向里面填入如下內(nèi)容:
/share *(sync,rw,no_root_squash)
各部分解釋:
/share 為本機(jī)要對外共享的目錄名稱
* 為允許外部訪問本機(jī)共享目錄的 ip 地址。
sync 為將數(shù)據(jù)先保存在內(nèi)存緩沖區(qū)中,必要時(shí)才寫入磁盤。
rw 為外部主機(jī)對本地共享目錄享有讀寫權(quán)限
no_root_squash 為訪問用戶先與本機(jī)用戶匹配,匹配失敗后再映射為匿名用戶或用戶組。
上述各部分其余選項(xiàng)有:
1->.客戶端的指定方式
指定ip地址的主機(jī):192.168.0.100
指定子網(wǎng)中的所有主機(jī):192.168.0.0/24 或 192.168.0.0/255.255.255.0
指定域名的主機(jī):nfs.test.com
指定域中的所有主機(jī):*.test.com
所有主機(jī):*
2->.選項(xiàng)說明
ro:共享目錄只讀;
rw:共享目錄可讀可寫;
all_squash:所有訪問用戶都映射為匿名用戶或用戶組;
no_all_squash(默認(rèn)):訪問用戶先與本機(jī)用戶匹配,匹配失敗后再映射為匿名用戶或用戶組;
root_squash(默認(rèn)):將來訪的root用戶映射為匿名用戶或用戶組;
no_root_squash:來訪的root用戶保持root帳號權(quán)限;
anonuid=UID>:指定匿名訪問用戶的本地用戶UID,默認(rèn)為nfsnobody(65534);
anongid=GID>:指定匿名訪問用戶的本地用戶組GID,默認(rèn)為nfsnobody(65534);
secure(默認(rèn)):限制客戶端只能從小于1024的tcp/ip端口連接服務(wù)器;
insecure:允許客戶端從大于1024的tcp/ip端口連接服務(wù)器;
sync:將數(shù)據(jù)同步寫入內(nèi)存緩沖區(qū)與磁盤中,效率低,但可以保證數(shù)據(jù)的一致性;
async:將數(shù)據(jù)先保存在內(nèi)存緩沖區(qū)中,必要時(shí)才寫入磁盤;
wdelay(默認(rèn)):檢查是否有相關(guān)的寫操作,如果有則將這些寫操作一起執(zhí)行,可以提高效率;
no_wdelay:若有寫操作則立即執(zhí)行,應(yīng)與sync配合使用;
subtree_check(默認(rèn)) :若輸出目錄是一個(gè)子目錄,則nfs服務(wù)器將檢查其父目錄的權(quán)限;
no_subtree_check :即使輸出目錄是一個(gè)子目錄,nfs服務(wù)器也不檢查其父目錄的權(quán)限,可以提
高效率;
3.使設(shè)置生效:exportfs -ra 或者 service nfs restart
4.通過命令查看共享目錄輸出情況:exportfs -v
nfs 客戶端配置:
客戶端可通過 showmount -e ip 查看遠(yuǎn)程服務(wù)器的對外共享目錄。
1.啟動 nfs 服務(wù)
2.建立掛載點(diǎn),mkdir /mnt/nfs
3.掛載:mount -t nfs ip:/share /mnt/nfs
4.卸載:umount /mnt/nfs
第3步的 ip 表示對外共享目錄的主機(jī) ip,也就是服務(wù)器 ip。此處可以使用localhost代替ip地址,表示用nfs掛載本機(jī)的目錄到另一目錄
可以將掛載信息寫入 /etc/fstab 文件,實(shí)現(xiàn)對 nfs 服務(wù)的自動掛載,格式如下:
ip:/share /mnt/share nfs defaults 0 0
其中:
ip:/share 為遠(yuǎn)程主機(jī)的 ip 地址和共享目錄
/mnt/share為要掛載到本地的目錄
nfs為文件系統(tǒng)類型
defaults 0 0為掛載選項(xiàng)
使用 mount | grep nfs 命令可以顯示當(dāng)前主機(jī)掛載的 nfs 目錄。
卸載已掛載的目錄:umount /mnt/nfs
以上所述是小編給大家分享的Linux 下nfs服務(wù)器搭建技巧,希望本文所述對大家有所幫助。