smart210使用nfs共享文件到開發板

1.安裝nfs:

sudo apt-get install nfs-kernel-server nfs-common portmap

2.配置文件:

sudo gedit /etc/exports

/home/jump/mynfs *(rw,sync,no_root_squash)

其中:

/home/jump/mynfs 爲共享目錄
* 表示所有的客戶機都可以掛接此目錄;
rw 表示掛接此目錄的客戶機對該目錄有讀寫的權力;
sync 表示所有數據在請求時寫入共享,即數據同步寫入內存和硬盤;
no_root_squash 表示允許掛接此目錄的客戶機享有該主機的root身份。

ro 只讀訪問
rw 讀寫訪問
sync 所有數據在請求時寫入共享
async NFS在寫入數據前可以相應請求
secure NFS通過1024以下的安全TCP/IP端口發送
insecure NFS通過1024以上的端口發送
wdelay 如果多個用戶要寫入NFS目錄,則歸組寫入(默認)
no_wdelay 如果多個用戶要寫入NFS目錄,則立即寫入,當使用async時,無需此設置
hide 在NFS共享目錄中不共享其子目錄
no_hide 共享NFS目錄的子目錄
subtree_check 如果共享/usr/bin之類的子目錄時,強制NFS檢查父目錄的權限(默認)
no_subtree_check 和上面相對,不檢查父目錄權限
all_squash 共享文件的UID和GID映射匿名用戶anonymous,適合公用目錄
no_all_squash 保留共享文件的UID和GID(默認)
root_squash root用戶的所有請求映射成如anonymous用戶一樣的權限(默認)
no_root_squash root用戶具有根目錄的完全管理訪問權限
anonuid=xxx 指定NFS服務器/etc/passwd文件中匿名用戶的UID
anongid=xxx 指定NFS服務器/etc/passwd文件中匿名用戶的GID

3.生效nfs配置

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

exportfs -ra 使/etc/exports生效

exportfs -v 查看導出生效的目錄

如果出現:

jump@mylubuntu:~/mystu/src/1.leds_s$ exportfs -ra
exportfs: /etc/exports [2]: Neither 'subtree_check' or 'no_subtree_check' specified for export "*:/home/jump/mynfs".
  Assuming default behaviour ('no_subtree_check').
  NOTE: this default has changed since nfs-utils version 1.0.x
exportfs: could not open /var/lib/nfs/.etab.lock for locking: errno 13 (Permission denied)

exportfs: can't lock /var/lib/nfs/etab for writing

解決辦法:

jump@mylubuntu:~/mystu/src/1.leds_s$ sudo chmod 777 -R /var/lib/nfs

並修改配置文件爲:/home/jump/mynfs *(rw,sync,no_root_squash,no_subtree_check)

修改完成並重啓nfs即可。

4.開發板:

新建  mkdir -m 775 mynfs

mount   -o   nolock   -t   nfs    192.168.1.103:/home/jump/mynfs   /mnt/mynfs

如果是wifi連接,掛載不上,就先斷開wifi

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章