天天看点

部署NFS服务

    NFS即网络文件系统,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。NFS最早由Sun公司开发,分2、3、4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本。

<a href="https://s1.51cto.com/wyfs02/M00/A0/C5/wKioL1mex8HQ3d6dAAHNz8Ij1eE455.png" target="_blank"></a>

搭建部署

服务端

1、安装软件

1

<code>[root@plinuxos ~]</code><code># yum install -y nfs-utils rpcbind</code>

2、编辑配置文件

2

3

<code>[root@plinuxos ~]</code><code># vim /etc/exports</code>

<code>/home/nfssharedir</code> <code>192.168.137.0</code><code>/24</code><code>(rw,</code><code>sync</code><code>,all_squash,anonuid=1000,anongid=1000)</code>

<code>##配置格式:共享目录 客户端IP(参数1,参数2,参数.......)</code>

▎参数说明:

rw:允许读写;

ro:只允许读;

sync:同步模式,内存数据实时写入磁盘,影响性能;

async:非同步模式,数据有丢失风险;

no_root_squash:客户端挂载NFS共享目录后,root用户不受约束,权限很大;

root_squash:与上面选项相对,客户端上的root用户收到约束,被限定成某个普通用户;

all_squash:客户端上所有用户在使用NFS共享目录时都被限定为一个普通用户;

anonuid/anongid:和上面几个选项搭配使用,定义被限定用户的uid和gid。

3、授权

<code>[root@plinuxos ~]</code><code># mkdir -p /home/nfssharedir</code>

<code>[root@plinuxos ~]</code><code># chown 777 /home/nfssharedir</code>

4、检查与启动

4

5

<code>[root@plinuxos ~]</code><code># netstat -ltnp</code>

<code>[root@plinuxos ~]</code><code># systemctl start nfs</code>

<code>[root@plinuxos ~]</code><code># ps aux | grep nfs</code>

<code>[root@plinuxos ~]</code><code># ps aux | grep rpc</code>

<code>[root@plinuxos ~]</code><code># systemctl enable nfs</code>

客户端

<code>[root@</code><code>test</code><code>-03 ~]</code><code># yum install -y nfs-utils</code>

<code>[root@</code><code>test</code><code>-03 ~]</code><code># showmount -e 192.168.137.100</code>

如果没有效果,先确认服务端服务已经启动,再确认服务端和客户端的防火墙已经关闭后,再次尝试。

也可以挂载:

<code>[root@</code><code>test</code><code>-03 ~]</code><code># mount -t nfs 192.168.137.100:/home/nfssharedir /mnt/</code>

exportfs

重启nfs服务时,需要把所有挂载点卸载掉。可以使用exportfs -arv命令。

1、编辑配置文件

<code>/tmp</code> <code>192.168.137.200(rw,</code><code>sync</code><code>,no_root_squash) </code><code>##新增该行</code>

2、执行exportfs -arv命令

<code>[root@plinuxos ~]</code><code># exportfs -arv</code>

<code>exporting 192.168.137.200:</code><code>/tmp</code>

<code>exporting 192.168.137.0</code><code>/24</code><code>:</code><code>/home/nfssharedir</code>

3、关闭服务端和客户端防火墙

4、检查效果

<code>[root@</code><code>test</code><code>-03 ~]</code><code># mount -t nfs 192.168.137.100:/tmp/ /mnt/</code>

▎NFS 4/6版本会有该问题(客户端文件属主属组nobody)

1、CentOS 7版本系统如果出现问题解决方案:

客户端挂载服务端共享目录到挂载点后,再重新挂载一次同时指定NFS的版本为3;

2、CentOS 6可以这样解决:

客户端和服务端都需要修改如下配置文件内容:

vim /etc/idmapd.conf

把“#Domain = local.domain.edu” 改为 “Domain = xxx.com” (这里的xxx.com,随意定义吧),然后再重启rpcidmapd服务。

本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1959153,如需转载请自行联系原作者

继续阅读