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年向外公布.功能是通过网络让不同的机器.不同的操 ...
随机推荐
- .NET的多种事务处理
Oracle 的事务操作,有时候想在批量操作数据集合的时候,执行一次失败,即为了避免数据异常,将所有的操作回滚..NET给我们提供了良好的事务操作,Oracle端也有事务操作,可以灵活使用,此处介绍. ...
- HDUOJ----3342Legal or Not
Legal or Not Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tota ...
- IOS中通知中心(NSNotificationCenter)
摘要 NSNotification是IOS中一个调度消息通知的类,采用单例模式设计,在程序中实现传值.回调等地方应用很广. IOS中通知中心NSNotificationCenter应用总结 一.了 ...
- map reduce相关程序
Test_1.java /** * Hadoop网络课程模板程序 * 编写者:James */ import java.io.IOException; import java.text.DateFor ...
- jquery实现高度的获取-位置函数
一.位置函数 1.offset() 获取匹配元素在当前视口的相对偏移.返回的对象包含两个整形属性:top 和 left.此方法只对可见元素有效. 2.innerWidth() 获取第一个匹配元素内部区 ...
- 关系数据库元数据处理类(一) 创建MSSQL元数据具体处理类
public class SqlServer : BaseMetadata { public SqlServer(string connectionString) : base(new DbUtili ...
- DBA_实践指南系列5_Oracle Erp R12日常运维和管理(案例)
2013-12-05 Created By BaoXinjian
- 文件描述符file descriptor与inode的相关知识
每个进程在Linux内核中都有一个task_struct结构体来维护进程相关的 信息,称为进程描述符(Process Descriptor),而在操作系统理论中称为进程控制块 (PCB,Process ...
- Python2 列表 cmp() 方法
描述 Python2 列表 cmp() 方法用于比较两个列表,如果 L1 < L2 返回 -1, 如果 L1 == L2 返回 0, 如果 L1 > L2 返回 1. 语法 cmp() 方 ...
- 软件测试自动化之- API Test
API测试 从本质上来说,API测试是用来验证组成软件的那些单个方法的正确性,而不是测试整个系统本身. API测试也被称为单元测试(Unit Testing), 模块测试(Module Testing ...