一、概念

NFS(Network File Server) 网络文件系统(映射)。网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS; NFS允许一个系统在网络上与他人共享目录和文件。

作用:用于Linux系统间进行文件共享

优点:配置简单,使用方便

缺点:兼容性差,安全性低

应用:机房集群内部的服务器共享,企业里常用nfs搭建存储系统(盘阵系统)

模式:C/S 模式

端口:NFS通常运行于2049端口

二、部署NFS

注意:

1、由于在使用NFS服务进行文件共享之前,需要使用RPC(Remote Procedure Call,远程过程调用)服务将NFS服务器的IP地址和端口号等信息发送给客户端。所以,在启动nfs之前,需要先查询rpcbind状态,如果该服务为停止状态,需要先启用rpcbind,再启用nfs;

2、图形界面会自带nfs,所以无需执行第一步骤,最小化安装时,客户端和服务端都需要安装;

3、步骤中的挂载,需在客户端上执行;

4、在设置挂载目录时,需要注意绝对路径,且该目录是否允许访问;

5、设置共享目录的权限时,除了服务权限,还要注意系统权限。

搭建步骤:

1、下载安装

# yum install nfs-utils -y

2、启动

# systemctl start nfs #开启后最好查询一下状态:systemctl status nfs

3、配置

# vim /etc/exports

/PATH HOSTNAME(rw)/(ro)

共享地址 客户机的IP  共享权限

/ken 172.20.10.7(rw) #给特定的ip共享,rw表示权限

/data *(rw) #给所有ip 共享

/data 172.20.10.0/28(rw)  #把网段共享出去 28表示掩码

/data 172.20.10.0/28(rw)  192.168.64.0/24(rw)  #设置多个网络

注意:* 表示对所有网段开放权限

nfs也可以共享多个目录

/ken 192.168.64.5(rw)

/test 192.168.64.7(rw)

4、刷新

# exportfs -r

更改属主:#chown -R nfsnobody:nfsnobody /home/renyz

或者更改权限:#chmod 757 /home/renyz

5、客户端挂载使用(客户端需要下载nfs-utils)

# mount -t nfs ServerIP:/PATH /LocalIDIR

# mount 服务机IP:/共享目录 /本地目录

# showmount -e ServerIP  #查看共享

6、开机自动挂载

服务机IP:/共享目录 /本地目录 nfs default 0 0 /etc/fstab

三、autofs(客户端操作)

nfs 是长连接的服务(客户端挂载完成之后,客户端与服务端之间连接一直保持,不管有无数据传输)

优点:响应速度快;缺点:浪费资源

自动挂载取消挂载的服务(15分钟后自动解挂)

1、安装

# yum install autofs -y

2、配置主配文件

# vim /etc/auto.master

/misc   /etc/auto.misc

#客户端挂载点目录 /etc/auto.misc

# 陷阱        规则文件

# 进入左边的路径将执行右边的规则

3、配置规则文件

# vim /etc/auto.misc

触发点 执行规则(命令)

cd  -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom

1   -fstype=nfs,rw  192.168.11.3:/renyz/1

2   -fstype=nfs,rw  192.168.11.3:/renyz/2

4、重启autofs服务

# systemctl restart autofs

5、测试

四、SSH

SSH为Secure Shell缩写,由IETF的网络小组所制定。SSH为建立在应用层基础上的安全协议。SSH是目前较可靠的,为远程登录会话和其他网络服务提供安全性的协议。

使用格式:ssh USERNAME@HOSTNAME

注意:其中USERNAME是服务端的用户名称,HOSTNAME是服务器的访问地址。

五、挂载问题一

1、问题起因:

在配置好一台NFS服务器,建立好分享目录,刷新配置以后,在另一台客户机中使用showmount -e 出现报错:

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

2、问题原因:

服务端的防火墙上默认没有开启nfs服务相应的端口

3、解决办法:

(1)简单粗暴地关闭防火墙

systemctl stop firewalld

如果开启了iptables的话,也是一样的,iptables的策略里也默认不会为nfs服务开启需要的端口

systemctl stop iptables

(2)在防火墙上开启端口

在设置了防火墙的环境中使用NFS,需要在防火墙上打开如下端口:

1. portmap 端口 111 udp/tcp;
2. nfsd 端口 2049 udp/tcp;
3. mountd 端口 "xxx" udp/tcp
系统 RPC服务在 nfs服务启动时默认会为 mountd动态选取一个随机端口(32768--65535)来进行通讯,我们可以通过编辑/etc/services 文件为 mountd指定一个固定端口:
# vim /etc/services
在末尾添加

mountd 1011/udp
mountd 1011/tcp

wq退出保存该文件

# stopsrc -s rpc.mountd
# startsrc -s rpc.mountd
# exportfs -a
# rpcinfo -p Hostname
现在我们会发现 mountd已经和端口 1011绑定了。

另外,nfs中需要通讯的服务还有 rpc.lockd和 rpc.statd,其中对lockd我们可以用类似的方法来指定固定端口,
# vim /etc/services
添加

lockd 35000/ucp
lockd 35000/tdp

# stopsrc -s rpc.lockd

# startsrc -s rpc.lockd
# exportfs -a
nfs客户端mount文件系统
# rpcinfo -p Hostname

但 rpc.statd无法通过该方法来指定端口,它只能使用随机端口,如有必要,在防火墙上要根据下面命令的显示来开放随机端口:

# no -a |grep ephemeral
tcp_ephemeral_high = 65535
tcpp_ephemeral_low = 32768
udp_ephemeral_high = 65535
udp_ephemeral_low = 32768

当然也可以不开放 rpc.statd需要的随机端口,带来的影响就是如果 nfs连接中断(比如server或client宕掉了),系统将无法通过statd来恢复连接中断前的状态,而必须重新 mount该nfs文件系统。

有关statd的详细功能说明,请参阅 http://publib.boulder.ibm.com/infocenter/
pseries/v5r3/topic/com.ibm.aix.cmds/doc/aixcmds5/statd.htm

六、挂载问题二

用mount挂载时却出现“access denied by server while mounting”这个错误;

原因及解决办法:

1、使用了非法端口,也就是使用了大于1024的端口。
这个错误,可以通过查看日志确认:
[root@local~ /]# cat /var/log/messages | grep mount
Jan 2 12:49:04 localhost mountd[1644]: refused mount request from 192.168.0.100 for /home/nfsshare/ (/home/nfsshare): illegal port 1689
解决办法:
修改配置文件/etc/exports,加入 insecure 选项,重启nfs服务,再尝试挂载。
/home/nfsshare/  *(insecure,rw,async,no_root_squash)
2、NFS版本问题
编辑/etc/sysconfig/nfs文件,找到下面:

#Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
#Turn off v4 protocol support
#RPCNFSDARGS="-N 4"  /*把这句前面的#号去掉*/

最后保存,重启nfs服务,再尝试挂载;如果挂载不上,可尝试在后面加-o nolock参数。
3、查看客户端挂载的目录是否具备读写权限,添加相应权限即可。
4、nfs服务器上的/etc/hosts中设置了客户端机器IP对应域名,去掉即可。
通过以上这几种方法,access denied by server while mounting这个错误应该可以得到解决了。

linux服务之NFS服务篇的更多相关文章

  1. Linux下开启nfs服务

    1.什么是NFS(Network FileSystem) NFS 就是 Network FileSystem 的缩写,最早之前是由 Sun 所发展出来的.他最大的功能就是可以透过网络,让不同的机器.不 ...

  2. Linux系统数据共享-NFS服务

    转载:http://www.cnblogs.com/mchina/archive/2013/01/03/2840040.html 一.NFS服务简介 NFS 是Network File System的 ...

  3. Linux系统中NFS服务配置

    文章目录:                一.NFS服务简介                二.NFS服务端配置                三.NFS客户端配置                四. ...

  4. linux服务搭建----NFS服务搭建

    nfs  服务     //配置脚本         /etc/exports     //服务器  发布目录     1> 确定需要发布的目录(想要共享的目录)     例如:      想发 ...

  5. Linux CentOS6.6 NFS服务的配置与安装

    一.简介 NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客 ...

  6. linux基础(5)- nginx服务、nfs服务

    一.nginx服务 源码安装: yum install gcc-* glibc-* openssl openssl-devel pcre pcre-devel zlib zlib-devel -yls ...

  7. Linux 笔记 - 第二十一章 配置 NFS 服务

    一.前言 NFS(Network File System,网络文件系统),主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录.NFS 客户端(一般为应用服务器,例如web)可以通 ...

  8. Linux搭建NFS服务

    一.NFS服务简单介绍 NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中, ...

  9. Linux网络文件共享服务之NFS

    一.NFS服务简介 NFS全称network file system 网络文件系统,基于内核的文件系统,有sun公司开发,通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件,它基于r ...

随机推荐

  1. 安装电脑思考到了Java设计模式:建造者模式

    目录 定义 意图 主要解决问题 何时使用 优缺点 结构 组装电脑的例子 定义 建造者模式是对象的创建型模式,可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表 ...

  2. Go之Zap日志库集成Gin

    简介 在许多Go语言项目中,我们需要一个好的日志记录器能够提供下面这些功能: 1 . 能够将事件记录到文件中,而不是应用程序控制台; 2 . 日志切割-能够根据文件大小.时间或间隔等来切割日志文件; ...

  3. Ugly Numbers UVA - 136

    Ugly numbers are numbers whose only prime factors are 2, 3 or 5. The sequence 1, 2, 3, 4, 5, 6, 8, 9 ...

  4. 【全网首发】鸿蒙开源三方组件--跨平台自适应布局yoga组件

    目录: 1.介绍 2.如何使用 3.集成方式 4.附录1:FlexBox科普 5.附录2:相关资料 介绍 yoga是facebook打造的一个跨IOS.Android.Window平台在内的布局引擎, ...

  5. Algorithm(4th) 1.5 union-find算法

    问题描述 问题输入是一对整数对,每个整数都代表一个对象,一对整数"p,q"表示 "p与q相连"(具有自反性,传递性,对称性,被归到一个等价类里),要求编写程序来 ...

  6. 【ORM】Mybatis与JPA的区别

    Mybatis与JPA的区别: 1.ORM映射不同: Mybatis是半自动的ORM框架,提供数据库与结果集的映射: JPA(Hibernate)是全自动的ORM框架,提供对象与数据库的映射: 2.可 ...

  7. UC-Android逆向工程师面试第2题分析

    博客链接:http://blog.csdn.net/qq1084283172/article/details/52133172 一.简介 这个题目是别人面试UC优视集团Android逆向工程师一职位的 ...

  8. POJ 3613 快速幂+Floyd变形(求限制k条路径的最短路)

    题意:       给你一个无向图,然后给了一个起点s和终点e,然后问从s到e的最短路是多少,中途有一个限制,那就是必须走k条边,路径可以反复走. 思路:       感觉很赞的一个题目,据说证明是什 ...

  9. 缓冲区溢出之栈溢出利用(手动编写无 payload 的 Exploit)

    0x01 介绍 Exploit 的英文意思就是利用,它在黑客眼里就是漏洞利用.有漏洞不一定就有Exploit(利用),有Exploit就肯定有漏洞.编写缓冲区溢出的Exploit分为3个方面:漏洞溢出 ...

  10. WDK 标准数据类型

    刚刚看到vs2012可以完美支持wdk开发,心中窃喜,正要下载,竟然看到xp不在其支持范围内, 这让刚刚从win7换过来的我真是DT,算了,还是和学习资料保持一致,反正学习的重点不是方便 正题: 为了 ...