本文屬於學習筆記,使用樹莓派3B、4B
NFS服務實現Win7與樹莓派的共享
一、NFS是什麼?
網絡文件系統,英文Network File System(NFS)。是由SUN公司研製的UNIX表示層協議(pressentation layer protocol),能使使用者訪問網絡上別處的文件就像在使用自己的計算機一樣。
二、樹莓派上搭建NFS
1.在樹莓派中安裝NFS 服務器:
pi@raspberrypi:~ $ sudo apt-get install nfs-common nfs-kernel-server
pi@raspberrypi:~ $ sudo apt-get install portmap //網上有很多人安裝,但是無需安裝因爲新版本已經代替了這個
2.建立要分享及掛載的目錄
pi@raspberrypi:~ $ mkdir /home/pi/NFS
3.在系統配置文件中添加需要掛載的目錄
pi@raspberrypi:~ $ sudo nano /etc/exports
修改 /etc/exports
在最後添加下面內容
/home/pi/NFS *(rw,sync,no_root_squash,no_subtree_check)
- /home/ning/rootfs :nfs客戶端加載目錄
- ‘*’ :允許所有的網段訪問,也可以使用具體的IP;
- rw:掛接此目錄的客戶端對該共享目錄具有讀寫權限;
- sync:資料同步寫入內存和硬盤;
- no_root_squash:root用戶具有對根目錄的完全管理訪問權限;
- no_subtree_check:不檢查父目錄的權限。
注意:*和後面的括號不能出現空格。
4. 重啓rpcbind 服務
pi@raspberrypi:~ $ sudo /etc/init.d/rpcbind restart
[ ok ] Restarting rpcbind (via systemctl): rpcbind.service.
5、重啓nfs服務
pi@raspberrypi:~ $ sudo /etc/init.d/nfs-kernel-server restart
[ ok ] Restarting nfs-kernel-server (via systemctl): nfs-kernel-server.service.
6.測試nfs服務是否啓動成功
pi@raspberrypi:~ $ showmount -e
Export list for raspberrypi:
/home/pi/NFS *
三、Win7上配置NFS服務
1.在win7下開啓nfs服務,如圖所示:
2.在win7的cmd進行掛載操作。
3.修改win7對nfs分區只讀屬性
Win7 NFS客戶端使用mount命令掛載NFS服務之後,文件系統對Win7只讀,無法寫入文件,無法新建文件夾,此時使用mount命令可以查看到如下狀態:
可以看到UID=-2由於在存儲設備上共享出來的NFS文件系統歸屬於root權限,並且無法修改該所屬用戶,而Windows通過UID=-2的用戶去寫,肯定寫不進去。
解決辦法:
讓Win7在掛載NFS的時候將UID和GID改成0即可:
打開註冊表:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default
增加兩項:AnonymousUid,AnonymousGid,如圖:
重新啓動計算機,重新mount即可。此時就能在win7下對nfs文件系統進行讀寫操作了,跟本地磁盤一樣。
查看mount屬性,如下:
如果要去掉nfs共享,只需只需卸載命令umount即可。
完
參考資料:
https://www.cnblogs.com/chenchenluo/archive/2013/06/18/3142385.html.
https://blog.csdn.net/qinchunwuhui/article/details/89047301.
https://www.cnblogs.com/zhangjiankun/p/4986827.html.
https://blog.csdn.net/zn2857/article/details/52832778.