NFS配置

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

一、服务端配置

server端IP地址:

192.168.237.6

安装nfs服务

yum install -y nfs-utils

在之前的版本中,是需要安装portmap包的,从centos6开始就改为rpcbind包了,它会在yum安装nfs-utils的时候一并安装。

nfs的配置文件在/etc/exports中添加如下内容:

/data/www 192.168.237.0/24(rw,sync,all_squash,anonuid=1004,anongid=1004)

说明:

  • /data/www:表示共享的目录;
  • 192.168.237.0/24:为共享的IP端;
  • rw:表示读写权限;
  • ro:表示只读;
  • sync:表示同步模式;
  • async:非同步模;
  • no_root_squash:表示root用户对共享目录拥有至高的控制权限;
  • root_squash:表示root用户对共享目录的权限不高,只有普通用户的权限;
  • all_squash:表示不管使用NFS的用户是谁,都会被限定为一个用户;
  • anonuid和anongid分别为限定的uid和gid,需要提前准备。

加入开机启动:

systemctl enable nfs

然后启动NFS服务:

systemctl start rpcbind
systemctl start nfs

二、客户端配置

安装服务

yum install -y nfs-utils

查看服务端共享的目录:

showmount -e 192.168.237.6

如果收到错误提示:

clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)

原因是连接被服务端防火墙阻挡,配置防火墙或将其关闭解决。

配置防火墙服务:

firewall-cmd --zone=public --permanent --add-service=nfs
success
firewall-cmd --zone=public --permanent --add-service=rpc-bind
success
firewall-cmd --zone=public --permanent --add-service=mountd
success
firewall-cmd --reload

再次执行后showmount成功看到以下信息:

Export list for 192.168.237.6:
/data/www 192.168.237.0/24

然后将共享目录挂载到本地:

mount -t nfs 192.168.237.6:/data/www/  /data/www/

如果想在系统启动后自动挂载NFS共享目录,可以在/etc/fstab文件中添加一行:

192.168.237.6:/data/www/ /data/www/        nfs    defaults,nolock       0 0

此时,挂载只需要执行:

mount -a

三、exportfs命令

  • -a 表示全部挂载或卸载
  • -r 表示重新挂载
  • -u 表示卸载一个目录
  • -v 表示显示共享的目录

当改变/etc/exports配置文件后,使用exportfs命令可以不用重启NFS服务。

标签: 文件服务

添加新评论