NFS服务器部署文档

文档目的

部署NFS服务,实现不同操作系统之间文件共享功能。

基础知识

NFS(Network Files System) 即网络文件系统,它最大的功能就是可以透过网络,让不同的机器、不同的操作系统、可以彼此分享个别的档案 (share files)。NFS文件系统协议允许网络中的主机通过TCP/IP协议进行资源共享,NFS客户端可以像使用本地资源一样读写远端NFS服务端的资料,需要注意NFS服务依赖于RPC服务与外部通信,所以必需保证RPC服务能够正常注册服务的端口信息才能正常使用NFS服务。

常用命令

rpcinfo -p localhost   查看rpc 使用端口

service nfs start      开启nfs服务

showmount -e [IP]    查看指定IP的共享文件

系统环境

服务器操作系统:Linux version 3.10.0-229.el7.x86_64 ([email protected]) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) )

服务器IP地址:172.16.34.61

客户机操作系统:Linux version 3.10.0-229.el7.x86_64 ([email protected]) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) )

客户机IP地址:172.16.34.62

涉及软件

rpcbind

nfs-utils

配置文件

主要配置文件:/etc/exports

这个档案就是 NFS 的主要配置文件了!不过,系统并没有默认值,所以这个档

案『 不一定会存在』,你可能必须要使用 vim 主动的建立起这个档案喔!我们

等一下要谈的设定也仅只是这个档案而已吶!

NFS 文件系统维护指令:/usr/sbin/exportfs

这个是维护 NFS 分享资源的指令,我们可以利用这个指令重新分享

/etc/exports 变更的目录资源、将 NFS Server 分享的目录卸除或重新分享等

等,这个指令是 NFS 系统里面相当重要的一个喔!至于指令的用法我们在底下

会介绍。

分享资源的登录档:/var/lib/nfs/*tab

在 NFS 服务器的登录文件都放置到 /var/lib/nfs/ 目录里面,在该目录下有两

个比较重要的登录档, 一个是 etab ,主要记录了 NFS 所分享出来的目录的完

整权限设定值;另一个 xtab 则记录曾经链接到此 NFS 服务器的相关客户端数

据。

客户端查询服务器分享资源的指令:/usr/sbin/showmount

这是另一个重要的 NFS 指令。exportfs 是用在 NFS Server 端,而 showmount

则主要用在 Client 端。这个 showmount 可以用来察看 NFS 分享出来的目录资

源喔!

操作步骤

1. 安装所需程序

由于nfs依赖于RPC服务,所以在安装nfs前必须先安装RPC服务,安装命令如下:

yum install rpcbind

然后再安装nfs服务

yum install nfs-utils

2. 创建共享目录

假设我们要共享的目录是/nfsfiles

mkdir /nfsfiles

并设置权限

chmod 777 /nfsfiles

在该文件夹中放入一个文本,作为之后验证使用

echo “this is my first nfs server” > /nfsfiles/README

现在进入关键一步,需要把 /nfsfiles 文件共享,就需要修改/etc/exports 中的配置内容

vim /etc/exports

注:exports中的格式是 [共享文件路径] + [可以允许访问的IP地址或IP网段]+[访问权限] , 中间是用空格隔开。

NFS配置共享的参数有:


参数


作用


ro


只读默认


rw


读写模式


root_squash


当NFS客户端使用root用户访问时,映射为NFS服务端的匿名用户。


no_root_squash


当NFS客户端使用root用户访问时,映射为NFS服务端的root用户。


all_squash


不论NFS客户端使用任何帐户,均映射为NFS服务端的匿名用户。


sync


同时将数据写入到内存与硬盘中,保证不丢失数据。


async


优先将数据保存到内存,然后再写入硬盘,效率更高,但可能造成数据丢失。

共享之后的文件夹名字背景会有变化,如下图:

3. 关闭防火墙

以下端口必须开放:

111端口的TCP和UDP

2049端口的TCP

另外,rpc.mount进程所打开的端口,由于每次重启NFS服务这个进程端口都不一样,所以要根据每次开放的端口来设置,TCP和UDP都需要打开。可以通过`rpcinfo -p localhost`命令查看rpc.mount端口号

注:网上还有一种方法是修改/etc/sysconfig/nfs 文件中的RQUOTAD_PORT, LOCKD_TCPPORT,LOCKD_UDPPORT, MOUNTD_PORT 四个值来固定端口号,但是在我实际实验用没有效果,原因未知。。

注:添加完这些端口后,在客户端还是无法使用showmount -e [ip] 查看到NFS服务器上共享的文件,但是可以用mount -t nfs [ip]:/nfsfiles 挂载共享文件,原因未知。。。如果实在不行,可以关闭防火墙,service firewalld stop , 虽然不推荐。。

firewall-cmd --zone=public --add-port=111/tcp --permanent

firewall-cmd --zone=public --add-port=111/udp --permanent

firewall-cmd --zone=public --add-port=2049/tcp --permanent

注:以下端口根据本机情况设定

firewall-cmd --zone=public --add-port=20048/tcp --permanent

firewall-cmd --zone=public --add-port=20048/udp --permanent

firewall-cmd --zone=public --add-port=54161/udp --permanent

firewall-cmd --zone=public --add-port=58138/tcp --permanent

firewall-cmd --reload

 4启动服务

启动RPC和nfs服务

注:如果不启动RPC服务,会出现下面问题一中的报错

systemctl start rpcbind

systemctl start nfs-server

5. 客户端挂载共享文件夹

linux端

 

客户端也需要安装相应软件,具体安装方法参见步骤1

将共享文件挂载到已经创建好了的文件夹/backupnfs中

mount  -t  nfs  172.16.34.61:/nfsfiles/  /backupnfs/

打开文件夹,验证挂载是否成功

以上结果表示访问成功

Windows端

 

注:鸟哥私房菜上说NFS只能在Linux操作系统之间共享文件,但是实际当中确实能在windows和Linux上共享,我在windows2012的系统中实验成功,但是windows10报错。。

在windows系统中需要先安装nfs服务器,安装方式是打开“控制面板”,选择“程序和功能”,点击“启动或关闭Windows功能”,勾选“NFS客户端”和“Telnet客户端”

如果是windows2012系统,则打开服务器管理工具,添加角色,添加“NFS客户端”和“Telnet客户端”两个角色即可

安装好后,打开cmd,输入命令

mount  \\172.16.34.61\nfsfiles   z:

注:貌似windows10的NFS支持不好,无法挂载,显示“不受支持的windows”,以上系统是windows2012操作系统,

常见问题

问题一:nfs无法启动,rpc.nfsd报错

解决方法: 因为nfs依赖于rpc服务,所以必须先启动rpc

systemctl start rpcbind

再启动nfs

时间: 2024-10-11 22:11:25

NFS服务器部署文档的相关文章

服务器安全部署文档(转载)

转载链接http://www.cnblogs.com/EmptyFS/p/3547796.html 年前一直在赶项目,到最后几日才拿到新服务器新添加的硬盘,重做阵列配置生产环境,还要编写部署文档做好安全策略,交给测试部门与相关部门做上线前最后测试,然后将部署文档交给相关部门同事,让他根据部署文档再做一次系统,以保证以后其他同事能自己正常部署服务器,最后终于赶在放假前最后一天匆忙搞定测试后,简单的指导同事按部署文档将服务器重新部署了一次就先跑路回家了,剩下的就留给加班的同事负责将服务器托管到机房了

VDP VMware 备份部署文档

文档内容 安装VDP ova虚拟机,部署VDP备份机制. 基础知识 vSphere Data Protection (VDP) 是一个基于磁盘的备份和恢复解决方案,可靠且易于部署. vSphere Data Protection 与 VMware vCenter Server 完全集成,可以对备份作业执行有效的集中式管理,同时将备份存储在经过重复数据消除的目标存储中,支持Web界面访问. 系统环境 操作系统:ESXi 6.0 预安装准备 在安装 vSphere Data Protection 之

Sqlserver2008安装部署文档

Sqlserver2008部署文档 注意事项: 如果你要安装的是64位的服务器,并且是新机器.那么请注意,你需要首先需要给64系统安装一个.net framework,如果已经安装此功能,请略过这一步.   具体安装.net framework的方法是:在图标<我的电脑>上右击选择<管理>,打开以后选择<功能>选项卡,如下图所示,然后点击添加功能,勾选..net framework,然后一直点击下一步安装即可. 安装的过程中,需要注意如果你要安装的服务器有外挂或者附加的

loganalyzer部署文档-(第一部分)

loganalyzer部署文档 环境准备: 简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构.基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案. LogAnalyzer 获取客户端日志会有两种保存模式,一种是

Nginx部署文档(二进制包安装)

Nginx部署文档(二进制包安装) 创建时间:2016-06-27 修改时间:2017-03-04 修改时间:2017-03-06 文档目的2 基础知识2 常用命令2 系统环境2 操作步骤3 1. 安装依赖3 2. 安装nginx3 3. 启动nginx5 3. 关闭防火墙6 4. 修改生产环境配置6 常见问题7 问题一:报错"cp: `conf/koi-win' and `/usr/local/nginx/conf/koi-win' are the same file"7 问题二:[

Wcp知识管理系统部署文档

Wcp知识管理系统部署文档 环境 CentOS-6.5-x86_64-bin-DVD1.iso jdk-7u79-linux-x64.tar.gz apache-tomcat-7.0.72.tar.gz MySQL-5.6.33-1.el6.x86_64.rpm-bundle.tar WCP知识管理系统v3.2.0(免费版.开源) http://www.wcpdoc.com/webdoc/view/Pub8a2831b350e6b01f0150e6c1ad5a009f.html 下载地址:百度云

zabbix监控安装部署文档

Zabbix监控部署文档 创建时间:2017.02.19          文档目的 安装部署Zabbix服务器和Zabbix客户端,监控客户端服务器的硬件状态 基础知识 zabbix(音同 zbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题. zabbix由2部分构成,zabbix server与可选组件zabbix agent. z

vCenter 6.0 部署文档

vCenter部署文档1 具体文档下载,可以访问http://down.51cto.com/data/2223764 文档概要2 基础知识2 系统环境2 安装步骤3 1. 运行ISO文件3 2. 选择适用于Windows的vCenter Server安装3 3. 选择我接受许可协议条款4 4. 部署类型选择嵌入式部署5 5. 填写FQDN名称6 6. 选择创建新的SSO域,并设置administrator用户密码7 7. 验证选择使用本地账户8 8. 数据库选择9 9. 配置vCenter服务使

loganalyzer部署文档

loganalyzer部署文档   目录 一.         环境准备:... 3 二.         简介... 3 三.         系统环境... 3 四.         安装并设置LAMP环境... 3 4.1 安装LAMP环境... 3 4.2 启动服务并加入开机启动... 3 4.3 设置MySQL root 密码... 3 4.4 测试php运行环境... 3 五.         检查并安装服务器端软件... 4 5.1 检查是否安装了rsyslog软件... 4 5.