本文共 2288 字,大约阅读时间需要 7 分钟。
NFS服务搭建与配置
NFS介绍
NFS是Network File System的缩写NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本NFS数据传输基于RPC协议,RPC为Remote Procedure Call(远程过程调用)的简写。NFS应用场景是:A,B,C三台机器上需要保证被访问到的文件是一样的。A共享数据出来,B和C分别去挂载A共享的数据目录,从而B和C访问到的数据和A上是一致的。
NFS服务端安装配置
yum install nfs-utils rpcbind -y //安装后默认会启动RPC的111端口vim /etc/exports //写上如下一行/home/nfstestdir 192.168.221.10/24(rw,sync,all_squash,anonuid=1000,anongid=1000)mkdir /home/nfstestdirchmod 777 /home/nfstestdirsystemctl start rpcbindsystemctl start nfssystemctl enable rpcbindsystemctl enable nfs
NFS配置选项
cat /etc/exports/home/nfstestdir 192.168.221.10/24(rw,sync,all_squash,anonuid=1000,anongid=1000)共享目录======共享给谁访问====限制的权限列表限制的权限列表rw //读写ro //只读sync //同步模式,内存数据实时写入磁盘async //非同步模式no_root_squash //客户端挂载NFS共享目录后,root用户不受约束,权限很大root_squash //root用户也要受到限制,被限定成某个普通用户all_squash //客户端上所有用户在使用NFS共享目录时都被限定为一个普通用户anonuid/anongid //定义被限定的uid和gid
客户端挂载
yum install nfs-utils.x86_64 -yshowmount -e 192.168.221.20 //显示如下内容,关闭服务端的防火墙和selinux,可以看到共享clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)mkdir /nfsmount -t nfs 192.168.221.20:/home/nfstestdir /nfsdf -h|grep nfs //可看到如下内容192.168.221.20:/home/nfstestdir 18G 1017M 17G 6% /nfs echo "nfs" > /nfs/nfs.txtll /nfs/nfs.txt //显示如下-rw-r--r--. 1 1000 1000 4 3月 4 18:50 /nfs/nfs.txt //正是服务端定义的anonuid=1000,anongid=1000
exportfs命令
客户端正在用服务端共享的目录时,如果服务端重启nfs服务,此时客户端就不能访问共享目录了。为了解决以上问题,就会用到exportfs命令rpm -qf `which exportfs` //下面一行是查看到的内容nfs-utils-1.3.0-0.48.el7.x86_64
在服务端作如下配置
echo "/tmp 192.168.221.10(rw,sync,no_root_squash)" >> /etc/exportsexportfs -arv
在客户端上查看,挂载
showmount -e 192.168.221.20 //以下三行是查看到的内容Export list for 192.168.221.20:/home/nfstestdir 192.168.221.10/24/tmp 192.168.221.10
mount -t nfs 192.168.221.20:/tmp/ /nfs2 df -h |grep nfs //以下是查到的内容192.168.221.20:/home/nfstestdir 18G 1017M 17G 6% /nfs192.168.221.20:/tmp 18G 1017M 17G 6% /nfs2
exportfs命令选项
-a //全部挂载或者全部卸载-r //重新挂载-u //卸载某一个目录-v //显示共享目录
NFS客户端问题
NFS 4版本会有问题客户端挂载共享目录后,不管是root用户还是普通用户,创建新文件时属主、属组为nobody客户端挂载时加上 -o nfsvers=3客户端和服务端都需要vim /etc/idmapd.conf把 "#Domain = local.domain.edu"改为 "Domain = xxx.com"(这里的xxx.com随意定义),然后重启rpcidmapd服务
转载于:https://blog.51cto.com/13480443/2082821