1、安裝NFS服務端
yum install nfs-utils rpcbind
2、配置
vim /etc/exports
/usr/local/collection 192.168.1.*(rw,sync,no_root_squash)#允許192.168.1.* IP段訪問
#或者
/usr/local/collection 192.168.1.2(rw,sync,no_root_squash) 192.168.1.3(rw,sync,no_root_squash) #允許2、3兩個ip訪問
vim /etc/idmapd.conf
去掉Domain前的注釋,把後面的值修改為你所使用的根網域名稱,使用hostname 命令便可找到該 DNS 網域名稱,該配置防止nfs用戶端 UID/GID 映射為 nobody:nobody
#下面是配置說明
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、修改連接埠,預設連接埠隨機,設定成指定連接埠
vim /etc/sysconfig/nfs
#添加:
RQUOTAD_PORT=3001
LOCKD_TCPPORT=3002
LOCKD_UDPPORT=3002
MOUNTD_PORT=3003
STATD_PORT=3004
4、開啟連接埠
vim /etc/sysconfig/iptables
添加
#nfs
-A INPUT -p tcp --dport 111 -j ACCEPT
-A INPUT -p tcp --dport 2049 -j ACCEPT
-A INPUT -p tcp --dport 3001:3004 -j ACCEPT
-A INPUT -p udp --dport 111 -j ACCEPT
-A INPUT -p udp --dport 2049 -j ACCEPT
-A INPUT -p udp --dport 3001:3004 -j ACCEPT
service iptables restart
service iptables restart
5、啟動
/etc/init.d/rpcbind start
/etc/init.d/rpcidmapd start
/etc/init.d/nfs start
showmount -e 192.168.1.2 #查看本機共用目錄
6、配置用戶端
yum install nfs-utils rpcbind
vim /etc/idmapd.conf
去掉Domain前的注釋,把後面的值修改為你所使用的根網域名稱,使用hostname 命令便可找到該 DNS 網域名稱,需要跟服務端一樣
/etc/init.d/rpcidmapd start
/etc/init.d/nfs start
showmount -e 192.168.1.2 #查看服務端共用
mount -t nfs 192.168.1.2:/usr/local/collection /usr/local/collection -o nolock #預設是用的udp下面用的是tcp
mount -t nfs 192.168.1.2:/usr/local/collection /usr/local/collection -o nolock -o proto=tcp