歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu 開啟 NFS 與 開發板 連接

Ubuntu 開啟 NFS 與 開發板 連接

日期:2017/2/28 16:35:45   编辑:Linux教程

涉及文件
portmap hosts.deny hosts.allow

涉及操作(按順序如下)
./etc/init.d/portmap restart
./etc/init.d/nfs-common restart
./etc/init.d/nfs-kernel-server restart

安裝 server 和 client

Ubuntu上默認是沒有安裝NFS服務器的,首先要安裝NFS服務程序:
$ sudo apt-get install nfs-kernel-server
(安裝nfs-kernel-server時,apt會自動安裝nfs-common和portmap)
這樣,宿主機就相當於NFS Server。

同樣地,目標系統作為NFS的客戶端,需要安裝NFS客戶端程序。如果是Debian/Ubuntu系統,則需要安裝nfs-common。
$ sudo apt-get install nfs-commmon
nfs-common和nfs-kernel-server都依賴於portmap!
這樣就安裝完了,下面進行配置

配置 NFS

配置portmap
方法1: 編輯/etc/default/portmap, 將 最後一行注釋掉.
方法2: $ sudo dpkg-reconfigure portmap , 對Should portmap be bound to the loopback address? 選N.

配置/etc/hosts.deny
(禁止任何host(主機)能和你的NFS服務器進行NFS連接),加入:
### NFS DAEMONS
portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL

配 置/etc/hosts.allow
允許那些你想要的主機和你的NFS服務器建立連接。下列步驟將允許任何IP地址以192.168.197開頭的主機(連 接到NFS服務器上),也可以指定特定的IP地址。參看man頁 hosts_access(5), hosts_options(5)。加入:
### NFS DAEMONS
portmap: 192.168.197.
lockd: 192.168.197.
rquotad: 192.168.197.
mountd: 192.168.197.
statd: 192.168.197.

/etc/hosts.deny 和 /etc/hosts.allow 設置對portmap的訪問. 采用這兩個配置文件有點類似"mask"的意思. 現在/etc/hosts.deny中禁止所有用戶對portmap的訪問. 再在/etc/hosts.allow 中允許某些用戶對portmap的訪問.

配置/etc/exports
NFS掛載目錄及權限由/etc/exports文件定義
比如我要將將我的home目錄中的/home/liliming/arm2410目錄讓192.168.197.*的IP共享, 則在該文件末尾添加下列語句:
/home/liliming/arm2410 192.168.197.*(rw,sync,no_root_squash)
或者: /home/liliming/arm2410 192.168.197.0/24(rw,sync,no_root_squash)
注意這裡,這樣寫有可能你的NFS還不能用,你可以允許所以IP共享你的目錄,語句如下:
/home/liliming/arm2410 *(rw,sync,no_root_squash)

至此配置完成,下面啟動NFS

啟動NFS

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

測試 NFS

Ubuntu 下
sudo mount localhost:/home/liliming/arm2410 /mnt
ls /mnt
看是否已經掛載成功
開發板 下
mount 192.168.197.75:/home/liliming/arm2410 /mnt
ls /mnt
看是否已經掛載成功(192.168.197.75 是Ubuntu的IP 地址)

可能出現的錯誤:
1. 掛載不成功,具體提示信息不記得了,可以這樣試試
配置/etc/exports
/home/liliming/arm2410 *(rw,sync,no_root_squash)
也就是允許所有的IP 訪問
2. 提示 mount rpc unable to receive errno connection refused
說明你的服務器端(Ubuntu )服務沒設定好,原因可能如下:
a. NFS 沒啟動,按照上面的啟動步驟 再重新啟動一下
b. 看一下 文件 /etc/exports 和文件 /etc/hosts.allow 裡面的IP 是不是 包含 你的開發板 IP,
不包含的話,把你的網段寫上,重新啟動 NFS

Copyright © Linux教程網 All Rights Reserved