centos7.1安裝nfs

環境:centos7.1 html

server:192.168.0.63 node

client:192.168.0.64 (centos7.1 客戶端)linux

共享文件的目錄用戶爲:web(uid:1000,gid:1000)web

1、安裝vim


yum -y install nfs-utils rpcbindwindows


nfs 的配置文件 /etc/expotscentos

共享目錄賦予權限:chmod 755  /home/data安全

vim /etc/exports服務器

/home/data  192.168.0.0/24(rw,async,insecure,anonuid=1000,anongid=1000,no_root_squash)async


2、使配置生效


exportfs -rv


#配置文件說明:

-----------------------------

/opt/test 爲共享目錄

192.168.1.0/24  能夠爲一個網段,一個IP,也能夠是域名,域名支持通配符 如: *.com

rw:read-write,可讀寫;

ro:read-only,只讀;

sync:文件同時寫入硬盤和內存;

async:文件暫存於內存,而不是直接寫入內存;

no_root_squash:NFS客戶端鏈接服務端時若是使用的是root的話,那麼對服務端分享的目錄來講,也擁有root權限。顯然開啓這項是不安全的。

root_squash:NFS客戶端鏈接服務端時若是使用的是root的話,那麼對服務端分享的目錄來講,擁有匿名用戶權限,一般他將使用nobody或nfsnobody身份;

all_squash:不論NFS客戶端鏈接服務端時使用什麼用戶,對服務端分享的目錄來講都是擁有匿名用戶權限;

anonuid:匿名用戶的UID值

anongid:匿名用戶的GID值。備註:其中anonuid=1000,anongid=1000,爲此目錄用戶web的ID號,達到鏈接NFS用戶權限一致。

defaults 使用默認的選項。默認選項爲rw、suid、dev、exec、auto nouser與async。

atime 每次存取都更新inode的存取時間,默認設置,取消選項爲noatime。

noatime 每次存取時不更新inode的存取時間。

dev 可讀文件系統上的字符或塊設備,取消選項爲nodev。

nodev 不讀文件系統上的字符或塊設備。

exec 可執行二進制文件,取消選項爲noexec。

noexec 沒法執行二進制文件。

auto 必須在/etc/fstab文件中指定此選項。執行-a參數時,會加載設置爲auto的設備,取消選取爲noauto。

noauto 沒法使用auto加載。

suid 啓動set-user-identifier設置用戶ID與set-group-identifer設置組ID設置位,取消選項爲nosuid。

nosuid 關閉set-user-identifier設置用戶ID與set-group-identifer設置組ID設置位。

user 普通用戶能夠執行加載操做。

nouser 普通用戶沒法執行加載操做,默認設置。

remount 從新加載設備。一般用於改變設備的設置狀態。

rsize 讀取數據緩衝大小,默認設置1024。--影響性能

wsize 寫入數據緩衝大小,默認設置1024。

fg 之前臺形式執行掛載操做,默認設置。在掛載失敗時會影響正常操做響應。

bg 之後臺形式執行掛載操做。

hard 硬式掛載,默認設置。若是與服務器通信失敗,讓試圖訪問它的操做被阻塞,直到服務器恢復爲止。

soft 軟式掛載。服務器通信失敗,讓試圖訪問它的操做失敗,返回一條出錯消息。這項功能對於避免進程掛在可有可無的安裝操做上來講很是有用。

retrans=n 指定在以軟方式安裝的文件系統上,在返回一條出錯消息以前重複發出請求的次數。

nointr 不容許用戶中斷,默認設置。

intr 容許用戶中斷被阻塞的操做而且讓它們返回一條出錯消息。

timeo=n 設置請求的超時時間以十分之一秒爲單位。

tcp 傳輸默認使用udp,可能出現不穩定,使用proto=tcp更改傳輸協議。客戶端參考mountproto=netid


(以上內容:參考:man nfs)

3、啓動nfs

systemctl enable rpcbind

systemctl start rpcbind

systemctl enable nfs-server

systemctl start nfs-server


確認NFS服務器啓動成功:

rpcinfo -p

查看具體目錄掛載權限

cat /var/lib/nfs/etab


4、客戶端掛載:

一、linux客戶端掛載:

在從機上安裝NFS 客戶端


首先是安裝nfs,而後啓動rpcbind服務


systemctl enable rpcbind.service


systemctl start rpcbind.service


注意:客戶端不須要啓動nfs服務

檢查 NFS 服務器端是否有目錄共享:

showmount -e nfs服務器的IP

showmount -e 192.168.0.63     


客戶端掛載#開機自動掛載

vim /etc/fstab  

192.168.0.63:/home/data    /home/data     nfs4 rw,hard,intr,proto=tcp,port=2049,noauto    0  0

手工掛載:

mount -t nfs 192.168.0.63:/home/data /home/data

#查看是否掛載成功。

df -h 

NFS默認是用UDP協議,換成TCP協議達到穩定傳輸目的:

mount -t nfs 192.168.0.63:/home/data /home/data -o proto=tcp -o nolock


二、windows客戶端掛載:


1)、Win7自帶的NFS客戶端能夠在「控制面板」->「程序」->「WIndows 功能」找到->nfs-安裝。

2)、因爲自帶的客戶端功能少,缺乏用戶名映射,功能,因此必然會遇到權限的問題。因此須要自行配置權限問題


獲取nfs server 用戶web的gid和uid,並記錄uid和gid,當前爲:1000


打開註冊表編輯器,找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default,添加兩個REG_DWORD值,填上uid和gid(10進制)完成後重啓電腦


註冊表導出是以下格式 :

Windows Registry Editor Version 5.00


[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default]

"AnonymousGid"=dword:000003e8

"AnonymousUid"=dword:000003e8


三、掛載到Z盤

mount -o anon mtype=soft lang=ansi  \\192.168.0.63\home\data\  Z:\

事項:必定要用軟裝載模式(mtype=soft),防止資源管理器中止響應,不能用utf-8

參考:http://nfs.sourceforge.net/nfs-howto/index.html

相關文章
相關標籤/搜索