/webdata (代表主机地址,即任意主机地址)(sync(sync表示资料同步写入磁盘中,即客户端写入,则服务端也同步写入),rw(即客户端主机对共享资源有读、写权限),all_squash)
/tmp (rw,no_root_squash)
/home/share 192.168.1. (表示网段 192.168.1.x的网段都可共享) (rw,root_squash) *(ro)
/opt/data 192.168.1.18(rw)
共享资源路径:就是要共享出来的目录或者磁盘分区。如上面的/tmp、/home/share目录等。
主机地址:设定允许使用NFS Server共享资源的客户端主机地址,主机地址可以是主机名、域名、IP地址等,支持匹配。
选项: 下面是可用的各个选项含义:
ro : 即为: read only ,也就是客户端主机对共享资源仅仅有读写权限。
rw: 即为: read write,也就是客户端主机对共享资源有读、写权限。
no_root_squash: 信任客户端,根据用户UID进行判断,如果登入到NFS主机的用户是ROOT,那么此用户就拥有资源的最高权限。此参数很不安全,不建议使用。
root_squash : 系统预设值,当登入NFS主机的用户是root时,那么这个使用者的权限将被缩为匿名使用者,
也就是它的UID和GID都会编程nobody身份,只有可读权限,系统以此为预设值,显然为了安全考虑。
all_squash: 不管登陆NFS的主机的是什么用户,都会将共享文件的UID和GID映射为匿名用户nfsNobody.
no_all_squash: 系统预设值,保留共享文件的UID和GID默认权限。
sync: 资料同步写入磁盘中。默认选择。
async : 资料会先暂时存放在内存中,不会直接写入磁盘。
设置NFS-server时,确保相应的包已经安装。 # rpm -qa | grep rpcbind; #rpm -qa | grep nfs
利用exportfs命令即可让修改生效:
重新mount文件/etc/exports中分享出来的目录,显示mount过程,操作如下:
#exportfs -rv (-r: 重新mount /etc/exports中分享出来的目录; -v : 在export的时候,将详细的信息输出到屏幕上)
实际操作:
#yum install rpcbind
#yum install nfs-utils;
配置共享目录: # vi /etc/exports
#exportfs -rv (让配置的文件生效)
#ps -ef |grep nfs (查看nfs服务是否启动)
#systemctl start rpcbind(启动rpcbind服务)
#ps -ef | grep rpc (查看rpcbind服务是否被启动)
#systemctl start nfslock(启动nfslock服务)
完成服务端的服务配置.
关闭防火墙: # iptables -F ;
或临时生效: # setenforce 0;
关闭firewalld # systemctl stop firewalld (firewalld为centos7后新增的防火墙)
以上完成服务端的配置。
开始设置客户端的配置。(客户端可以是Windows、linux客户端);
以linux客户端配置为例:
#rpm -qa |grep rpcbind (#yum install rpcbind)
查看服务端共享的文件信息 #showmount -e 192.168.3.99(nfs服务端的IP地址)
挂载服务端的文件: # mount -t nfs 192.168.3.99:/data1(服务端的目录) /mnt(本地客户端目录)
#df -h (查看)
#umount -t nfs 192.168.3.99:/data1
原文:https://blog.51cto.com/12772149/2601485