前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >NFS架构搭建及配置 原

NFS架构搭建及配置 原

作者头像
阿dai学长
发布2019-04-03 11:08:53
7000
发布2019-04-03 11:08:53
举报
文章被收录于专栏:阿dai_linux阿dai_linux

第14章 NFS服务搭建与配置

14.1 NFS介绍

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

应用场景

A,B,C三台机器上需要被访问到的文件是一样的,A共享数据出来,B和C分别取挂载A共享的数据目录,从而B和C访问到的数据和A上的一致。

14.2 NFS服务端安装配置

准备两台虚拟机,一台作为服务端,一台作为客户端。

服务端

IP:192.168.8.130

安装NFS工具:
代码语言:javascript
复制
[root@localhost ~]# yum install -y nfs-utils rpcbind
配置
代码语言:javascript
复制
[root@localhost ~]# vim /etc/exports
/home/nfstestdir 192.168.8.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
#指定要进行分享的目录;指定要共享该目录的机器

创建分享目录并制定权限:
[root@localhost ~]# mkdir /home/nfstestdir
[root@localhost ~]# chmod 777 /home/nfstestdir
启动NFS服务

在yum安装完成后,系统会自动启动rpcbind服务(在服务端进程名称为systemd),默认监听的端口时111端口。

代码语言:javascript
复制
[root@localhost ~]# systemctl start nfs

将NFS服务加入开机启动项:  
[root@localhost ~]# systemctl enable nfs

客户端

IP:192.168.8.132

安装NFS工具:
代码语言:javascript
复制
[root@adailinux ~]# yum install -y nfs-utils
客户端挂载
  • 检查客户端是否有权限访问服务端文件:
代码语言:javascript
复制
[root@adailinux ~]# showmount -e 192.168.8.130
clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)

报错: 无法连接到服务端机器(网络不通)! 解决办法:

  • 检查服务端NFS服务是否开启(监听111端口)
  • 如果确认服务端NFS服务已经开启,那么检查防火墙状态,关闭服务端和客户端firewalld和SELinux防火墙

解决完上述错误后再次执行命令:

代码语言:javascript
复制
[root@adailinux ~]# showmount -e 192.168.8.130
Export list for 192.168.8.130:
/home/nfstestdir 192.168.8.0/24

即,客户端可以正常访问服务端机器。

  • 开始挂载
代码语言:javascript
复制
[root@adailinux ~]# mount -t nfs 192.168.8.130:/home/nfstestdir /mnt/

[root@adailinux ~]# df -h
文件系统                        容量  已用  可用 已用% 挂载点
192.168.8.130:/home/nfstestdir   18G  7.5G   11G   42% /mnt

测试

在客户机挂载目录创建文件:

代码语言:javascript
复制
[root@adailinux ~]# cd /mnt/
[root@adailinux mnt]# ll
总用量 0
-rw-r--r-- 1 mysql mysql 0 8月  23 19:50 test123

查看服务端共享目录:

代码语言:javascript
复制
[root@localhost ~]# ll /home/nfstestdir/
总用量 0
-rw-r--r--. 1 mysql mysql 0 8月  23 19:50 test123

即,实现了同步共享!

14.3 NFS配置选项

代码语言:javascript
复制
[root[@localhost](https://my.oschina.net/u/570656) ~]# vim /etc/exports
/home/nfstestdir 192.168.8.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
# 第一列:指定要进行分享的目录;
# 第二列:指定要共享该目录的机器
# 第三列:NFS共享的参数,常用参数如下: 
 ro                    只读访问 
 rw                   读写访问 
 sync                所有数据在请求时写入共享 
 async              NFS在写入数据前可以相应请求 
 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            指定NFS服务器/etc/passwd文件中匿名用户的UID 

14.4 exportfs命令

exportfs命令用来管理当前NFS共享的文件系统列表。

Options: -a:全部卸载或全部挂载 -r:重新挂载 -u:卸载某个目录 -v:显示共享目录

常用组合: exportfs -arv 服务端更改配置文件后,不重启服务,直接执行该命令就可以使更改后的配置文件生效。

注意: 在重启nfs服务之前需要先将所有挂载点卸载,否则将发生程序错误,严重者会拖垮系统。

以上操作均在服务端进行!!!

14.5 NFS客户端问题

针对NFS4版本在centos6中应用存在如下问题: 客户端挂载共享目录后,不管是root用户还是普通用户,创建新文件时属主、数组为nobody。

解决方法:

  • 方法1:在客户端进行挂载时加上选项-o nfsvers=3
代码语言:javascript
复制
[root@adailinux ~]# monunt -t nfs -o nfsvers=3 192.168.8.130:/tmp/ /mnt/

如果目录已经挂载,而又不想卸载,执行如下命令:

代码语言:javascript
复制
[root@adailinux ~]# monunt -t nfs -o remount,nfsvers=3 192.168.8.130:/tmp/ /mnt/
  • 方法2:客户端和服务端都需要
代码语言:javascript
复制
[root@adailinux ~]# vim /etc/idmapd.conf

把该配置文件中的“Domain = local.domain.com”改为“Domain = xxx.com”(此处xxx.com自定义),然后重启rpcidmapd服务(在centos7中直接重启rpcbind服务)。

(adsbygoogle = window.adsbygoogle || []).push({});

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017/08/23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第14章 NFS服务搭建与配置
    • 14.1 NFS介绍
      • 应用场景
    • 14.2 NFS服务端安装配置
      • 服务端
      • 客户端
      • 测试
    • 14.3 NFS配置选项
      • 14.4 exportfs命令
        • 14.5 NFS客户端问题
          • 解决方法:
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档