NFS 网络文件系统
????CentOS下搭建NFS和windows掛載
? ? NFS(Network File System)即網絡文件系統,是FreeBSD支持的文件系統中的一種,它允許網絡中的計算機之間通過TCP/IP網絡共享資源。在NFS的應用中,本地NFS的客戶端應用可以透明地讀寫位于遠端NFS服務器上的文件,就像訪問本地文件一樣。
以下是NFS最顯而易見的好處:
1. 節省本地存儲空間,將常用的數據存放在一臺NFS服務器上且可以通過網絡訪問,那么本地終端將可以減少自身存儲空間的使用。
2. 用戶不需要在網絡中的每個機器上都建有Home目錄,Home目錄可以放在NFS服務器上且可以在網絡上被訪問使用。
3. 一些存儲設備如軟驅、CDROM和Zip(一種高儲存密度的磁盤驅動器與磁盤)等都可以在網絡上被別的機器使用。這可以減少整個網絡上可移動介質設備的數量。
實驗環境:
一:服務器和客戶機都要安裝nfs?和?rpcbind軟件包:
yum -y install nfs-utils??rpcbind
二:在服務端創建需要共享的文件并添加權限
mkdir /usr/local/xcb
chmod 666 /usr/local/xcb
三:編輯export文件 ? vim /etc/exports
?/usr/local/xcb 192.168.103.106(rw,sync,no_root_squash,no_all_squash)
設置共享的目錄,哪些可以訪問的客戶端ip,也可以設置一個網段(192.168.103.0/24)
權限說明:
rw: ?可讀可寫
ro: ?只讀
sync:?數據同步寫入內存和硬盤,也可以使用async,此時數據會先暫存于內存中,而不立即寫入硬盤。
no_root_squash:?NFS客戶端連接服務端時如果使用的是root的話,那么對服務端分享的目錄來說,也擁有root權限。顯然開啟這項是不安全的。
root_squash:NFS客戶端連接服務端時如果使用的是root的話,那么對服務端分享的目錄來說,擁有匿名用戶權限,通常他將使用nobody或nfsnobody身份;
all_squash:不論NFS客戶端連接服務端時使用什么用戶,對服務端分享的目錄來說都是擁有匿名用戶權限;
anonuid:匿名用戶的UID值,通常是nobody或nfsnobody,可以在此處自行設定;
anongid:匿名用戶的GID值。
exportfs -f 使配置生效
四:啟動服務
service nfs start
service rpcbind start
注意:在訪問的時候需要關閉防火墻,或者在防火墻里面開啟需要的端口
修改/etc/service,添加以下內容(端口號必須在1024以下,且未被使用) ?
# Local services
mountd 1011/tcp #rpc.mountd
mountd 1011/udp #rpc.mountd
rquotad 1012/tcp #rpc.rquotad
rquotad 1012/udp #rpc.rquotad
?在防火墻里開通如下端口vim /etc/sysconfig/iptables
#rpc
-A INPUT -m state --state NEW -m tcp -p tcp --dport 121 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 121 -j ACCEPT
#nfsd
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 2049 -j ACCEPT
#rquotad
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1012 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 1012 -j ACCEPT
#mountd
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1011 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 1011 -j ACCEPT
五:客戶端掛載
showmount -e 192.168.103.106 ?查看服務器共享的目錄
nfs默認使用的是udp協議,為了提高nfs的穩定性,如下使用tcp協議掛載
mount -t nfs 192.168.103.106:/usr/local/xcb /usr/local/xcb -o proto=tcp -o nolock
掛載成功后,即可訪問共享的nfs文件系統
六:卸載已掛載的nfs
umount /usr/local/xcb
windwos掛載linux主機NFS
啟動windos NFS客戶端服務:
1. 打開控制面板->程序->打開或關閉windows功能->NFS客戶端
勾選NFS客戶端,即開啟windows NFS客戶端服務.
2.win+R->cmd
mount 192.168.1.10:/xcb X:
成功掛載,打開我的點腦,你即可在你網絡位置看到 X:盤了
解釋:?
mount,是指令
192.168.1.10你的linux主機IP
/xcb 你的共享目錄
X:你掛載的網絡文件盤--注意,可能會與你的其他盤沖突,你可以隨意更改
3.取消掛載:
直接在 我的電腦 里面鼠標點擊取消映射網絡驅動器 X:
或者: win+R->cmd
輸入:?umount X:
(umount -a 取消所有網絡驅動器)
1.問題:
? ? ?Win7 NFS客戶端訪問Linux 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
2.問題:
F:\SVN\DataEngineHAT\Robot\ENMC>mount \\192.168.103.106\xcb z:
網絡錯誤 - 53
有關詳細信息,請鍵入“NET HELPMSG 53”。
解決方法:配置文件是否配置正確,nfs服務是否正確開啟,防火墻是否關閉
=============================================================================
linux訪問linux下的NFS服務器
#showmount -e 192.168.103.106 ? ? ? ? ? ? ? ? ? ? ? (192.168.103.106—》linux的nfs服務器ip)
#mount 192.168.103.106:/xcb /var/NFS?
轉載于:https://blog.51cto.com/907832555/1830723
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的NFS 网络文件系统的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: button按钮无法提交表单问题发现与解
- 下一篇: 【转】 [C/OC的那点事儿]NSMut