Ubuntu 開啟 NFS 與 開發板 連線

2021-06-20 19:25:40 字數 2514 閱讀 9474

ubuntu nfs

涉及檔案

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

配置/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

參考:

Ubuntu開啟nfs並連線開發板

一 在ubuntu伺服器端的操作如下 1 安裝 nfs ubuntu 上預設是沒有安裝 nfs 伺服器的,因此我們首先安裝 nfs 伺服器端 sudoapt get install nfs kernel server 在一些文件中,提出還需要使用apt get 來手動安裝 nfs 的客戶端 nfs ...

ubuntu配置NFS,掛載到開發板

ubuntu配置nfs,掛載到開發板 在虛擬機器上的伺服器ubuntu 開發板客戶端 sudo apt get install nfs kernel server 安裝nfs,ubuntn上預設沒有安裝 mkdir share 建立共享目錄。在開發板上用mount將伺服器上的share share ...

nfs實現ubuntu與開發板OK6410檔案共享

fs,我們建立 nfs的目的是通過網路對外提供目錄檔案共享服務。nfs的原理是在客戶端通過網路將遠端主機共享檔案系統以掛載 mount 的方式加入本機的檔案系統,之後的操作就如同在主機上一樣。正因為ubuntu nfs 是乙個rpc remote procedure call protocol 遠端...