nfs服务器搭建

一.环境介绍    本实验使用了两台centos7虚拟机,其中        

服务器:192.168.1.188   

客户端:192.168.1.189

二.实验步骤    192.168.1.188上执行(服务器端)           

1.使用yum -y install nfs-utils     因为centos7自带了rpcbind,所以不用安装rpc服务,rpc监听在111端口,可以使用         ss -tnulp | grep 111查看rpc服务是否自动启动,如果没有启动,就systemctl start rpcbind 启动rpc服务。rpc在nfs服务器搭建过程中至关重要,因为rpc能够获得nfs服务器端的端口号等信息,nfs服务器端通过rpc获得这些信息后才能连接nfs服务器端。           

2.使用 rpm -qa nfs-utils 查看是否安装成功,           

3.编辑/etc/exports ,添加以下内容                  /data    192.168.1.0/24(rw,async)             

4.启动nfs服务,systemctl start nfs ,启动后 使用rpcinfo -p 192.168.1.188 查看,如图所示   

5.使用showmount -e localhost

6 .创建/data目录添加文件,更改权限(很重要!!!!!)   

mkdir /data    

touch /data/1.txt   

echo "hello nfs" >> /data/1.txt   

chown -R nfsnobody.nfsnobody /data   

在192.168.1.189上执行(客户端)           

1.yum -y intall nfs-utils (客户端上不需要启动nfs服务,只是为了使用showmount工具)           

2.检测rpc是否启动,              

3.使用showmount -e 192.168.1.188查看               

4.挂载至本地/mnt目录                      

mount -t nfs 192.168.1.188:/data /mnt                                          

1.txt可读写 。 nfs挂载完成。 接下来在服务器端执行                systemctl enable nfs-server.server                 systemctl enable rpcbind                让nfs,rpcbind开机自动启动,实验完成。

三.NFS服务的主配置文件:/etc/exports:

格式:[共享的目录] [主机名或IP(参数,参数)]当将同一目录共享给多个客户机,但对每个客户机提供的权限不同时,

可以这样: [共享的目录] [主机名1或IP1(参数1,参数2)] [主机名2或IP2(参数3,参数4)]

第一列:欲共享出去的目录,也就是想共享到网络中的文件系统;

第二列:可访问主机

192.168.152.13   指定IP地址的主机

nfsclient.test.com  指定域名的主机

192.168.1.0/24    指定网段中的所有主机

*.test.com         指定域下的所有主机

*                   所有主机

第三列:共享参数下面是一些NFS共享的常用参数: 

ro                  只读访问

rw                  读写访问 

sync     资料同步写入到内存与硬盘当中 

async     资料会先暂存于内存当中,而非直接写入硬盘 

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_squas       root用户具有根目录的完全管理访问权限 

anonuid=xxx   可以自行设定这个UID的值,这个UID必需要存在于你的/etc/passwd当中

例如可以编辑/etc/exports为: /tmp     *(rw,no_root_squash) /home/public 192.168.0.*(rw)   *(ro) /home/test  192.168.0.100(rw) /home/linux *.the9.com(rw,all_squash,anonuid=40,anongid=40)

原文地址:https://www.cnblogs.com/jinxf/p/9929567.html