Liunx下NFS服务器的搭建与配置
一、NFS简介
NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。
NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本NFS数据传输基于RPC(Remote Procedure Call)协议。
NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。
NFS在文件传送或信息传送过程中依赖于RPC协议。RPC (远程过程调用) 是能使客户端执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其它的传输协议。而这些传输协议用到这个RPC功能的。可以说NFS本身就是使用RPC的一个程序。或者说NFS也是一个RPC SERVER。所以只要用到NFS的地方都要启动RPC服务,不论是NFS SERVER或者NFS CLIENT。这样SERVER和CLIENT才能通过RPC来实现PROGRAM PORT的对应。
简单来说:NFS可以透过网络,让不同的主机、不同的操作系统实现共享存储。可以这么理解RPC和NFS的关系:NFS是一个文件系统,而RPC是负责负责信息的传输。
二、NFS搭建
2.1 NFS服务端所需的软件列表
nfs-utils: 这个是NFS服务主程序(包含rpc.nfsd、rpc.mountd、daemons)
rpcbind: 这个是CentOS6.X的RPC主程序(CentOS5.X的为portmap)
2.2 检查软件是否安装
cat /etc/redhat-release #查看系统版本
uname -r #查看系统内核版本
uname -m #查看系统是否64位
rpm -qa nfs-utils rpcbind #检查安装的软件包
2.3 如果 nfs-utils 和 rpcbind 没有安装,可以使用 yum 命令进行安装
yum install -y nfs-utils rpcbind
2.4 启动NFS服务端相关服务 (CentOS7.4)
/bin/systemctl start rpcbind.service
/bin/systemctl start nfs.service
如果是CentOS 6.x,执行以下脚本
service rpcbind start
service nfs start
三、 配置NFS服务端
3.1 创建共享目录,例如是 /data/nfs_share
mkdir -p /data/nfs_share
3.2 给目录添加权限
chown -R nfsnobody /data/nfs_share
3.2 编辑配置文件
vi /etc/exports
3.3 添加配置 (例如共享网段为 192.168.1.*)
/data/nfs_share 192.168.1.0/(rw,sync)
3.4 使配置生效
exportfs -r
3.5 重启服务
/bin/systemctl restart rpcbind.service
/bin/systemctl restart nfs.service
如果是CentOS 6.x
service rpcbind start
service nfs start
3.6 查询NFS服务器
showmount -e localhost
如果正确,会打印 /data/nfs_share 192.168.1.0/24
四、 配置NFS客户端
4.1 客户端也需要安装rpcbind和nfs-utils软件,并且设置开机自启动。(只需要启动rpcbind即可)
systemctl enable rpcbind.service
( CentOS 6.x 的命令是 chkconfig rpcbind on )
4.2 查看可以挂载目录 (这里假设NFS服务器IP是 192.168.1.1)
showmount -e 192.168.1.1
会打印出可以挂载的目录信息
4.3 创建挂载目录(目录路径根据实际情况创建)
mkdir /mnt/nfs_share
4.3 挂载目录
mount -t nfs 192.168.1.1:/data/nfs_share/ /mnt/nfs_share -o proto=tcp -o nolock
4.4 如果需要开机自动挂载目录,需要将挂载命令放在rc.local里面
五、 配置Windows NFS客户端
如果客户端是Windows,我们需要在程序和功能里面启用 NFS客户端。
控制面板 -> 程序 -> 程序和功能 --> 勾选 NFS服务,NFS客户端,确定。
之后可以在命令行使用mount命令挂载远程目录 (比如挂载到 Z 盘)
mount ip:/192.168.1.1/ /data/nfs_share/ z:
另外也可以在我的电脑(计算机) 中,创建映射网络驱动器,来挂载远程目录。
如果Windows版本不支持NFS服务,那么需要安装 Windows Services for UNIX ,然后在Korn Shell (开始菜单 -> 程序 -> Windows Services for UNIX -> Korn Shell) 中执行 mount命令。
六、 配置防火墙
如果网络环境中需要开启防火墙,那么需要在防火墙上打开如下端口:
1. portmap 端口 111 udp/tcp;
2. nfsd 端口 2049 udp/tcp;
3. mountd 端口 "随机(32768-65535)" udp/tcp
防火墙常用命令
#启动防火墙
systemctl start firewalld.service
#关闭防火墙
systemctl stop firewalld.service
#重新载入
systemctl restart firewalld.service
#查看配置结果
firewall-cmd --list-all
#添加规则(指定端口,--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#添加规则(指定IP与端口)
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.2" port protocol="tcp" port="" accept"
#删除规则
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.1.2" port protocol="tcp" port="" accept"
#添加规则(端口段)
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.2" port protocol="tcp" port="-" accept"
Liunx下NFS服务器的搭建与配置的更多相关文章
- Linux下NFS服务器的搭建与配置
一.NFS服务简介 NFS 就是 Network FileSystem 的缩写,最早之前是由sun 这家公司所发展出来的. 它最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享个别 ...
- Linux下NFS服务器的搭建与配置(转载)
一.NFS服务简介 NFS 就是 Network FileSystem 的缩写,最早之前是由sun 这家公司所发展出来的. 它最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享个别 ...
- Linux下NFS服务器的搭建与配置(转)
一.NFS服务简介 NFS 就是 Network FileSystem 的缩写,最早之前是由sun 这家公司所发展出来的. 它最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享个别 ...
- ubuntu下nfs服务器的安装与配置
nfs服务器的安装和配置 1.安装nfs 服务器,前提是你的系统能连上网. 2.设置/etc/exports配置文件 (1) 进入/etc/exports配置文件 (2) 在最后一行加入红色那行,/h ...
- CentOS NFS服务器的搭建与配置
1.查看系统是否已安装NFS [root@bogon ~]# rpm -qa | grep nfs [root@bogon ~]# rpm -qa | grep rpcbind 2.安装NFS [ro ...
- CentOS 6.7下 Samba服务器的搭建与配置(share共享模式)
https://www.linuxidc.com/Linux/2016-12/138220.htm
- 4、nfs服务器的搭建
4.1.nfs服务介绍: samba服务器一般互联网企业不会使用 nfs服务的端口是不固定的,需要先启动rpc服务对nfs服务端口进行注册 4.2.安装nfs: rpm -qa nfs-utils r ...
- CentOS 6.3下Samba服务器的安装与配置方法(图文详解)
这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下 一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...
- 【转载】Linux NFS服务器的安装与配置
一.NFS服务简介 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操 ...
随机推荐
- js firstChild 、nextSibling、lastChild、previousSibling、parentNode
nextSibling下一个兄弟节点 previousSibling上一个兄弟 parentNode父亲节点 <select><option value="zs" ...
- MyEclipse 8.6插件下载
(源自网络:http://hi.baidu.com/%D4%B5%BA%A3%C7%E9%C9%EE/blog/item/ad86323d1e80a5e33d6d97c6.html 和 http:/ ...
- Python 的 Matplotlib 画图库
Matplotlib安装 NumPy库方便数值运算,但枯燥的数据并不利于人们的直观理解. 数据需要可视化. Matplotlib:一个数据可视化函数库 使用前需要安装 利用Python自带 ...
- Android开发学习之数据存取
Android系统中提供了一种文件读写的方法,可以将一些数据以文件的形式保存在设备中.比如一些word文档,PDF文档,图片,音频,视频文件等. 使用文件读写方法的步骤: 1.调用Context.op ...
- 关于JavaScript中Get/Set访问器
有时候大家可能会纳闷,在使用JavaScript的时候,只需要给一个系统变量赋值就可以触发一系列操作去相应. 但是我们在写Js的时候,修改了一个自定义变量,却连个P都没有.是不是很郁闷呢? 其实,我们 ...
- PLSQL_Oracle Exception异常分类、异常抛出、异常处理、异常传播(概念)
2014-06-03 Created By BaoXinjian
- Linux 配置rdate时间服务器方法
配置多台服务器时,经常需要让各个服务器之间的时间保持同步,如果服务器有外网环境,可以直接同外部的时间服务器更新时间,可以采用rdate命令更新时间: rdate -s tick.greyware.co ...
- python标准库介绍——25 errno 模块详解
==errno 模块== ``errno`` 模块定义了许多的符号错误码, 比如 ``ENOENT`` ("没有该目录入口") 以及 ``EPERM`` ("权限被拒绝& ...
- 常用IP核
前言 记录自己用到的模块,随时补充. 主要分类: 一.常用模块 1-FIFO FIFO分为两种,一是输入输出时钟相同(Common clock)的 fifo ;二是输入输出时钟不相同(Independ ...
- 【Android】6.2 AlertDialog(警告对话框)
分类:C#.Android.VS2015: 创建日期:2016-02-08 一.简介 AlertDialog也是Android系统当中常用的对话框之一. 在一个AlertDialog中,可以有一个Bu ...