一、NFS
1.1 概述
NFS 是一种基于 TCP/IP 传输的网络文件系统协议,最初由 sun 公司开发。通过使用 NFS协议,客户机可以像访问本地目录一样访问远程 NFS 服务器中的共享资源。
NFS 也是 NAS存储设备必然支持的一种协议,但是因为没有用户认证机制,而且数据在网络上明文传输,安全性很差,所以一般只能在局域网中使用。
1.2 相关软件包
NFS 服务的实现依赖于 RPC (Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。在Centos 7系统中,需要安装 nfs-utils、rpcbind 软件包来提供 NFS 共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持。手动加载 NFS 共享服务时,应该先启动 rpcbind,再启动 nfs。
nfs端口号2049
rpc端口号111
rpm -q rpcbind nfs-utils #查询是否安装 yum install -y nfs-utils rpcbind #安装nfs和rpc的软件包 systemctl start nfs #开启nfs服务 systemctl start rpcbind #开启rpcbind服务 systemctl enable nfs #开机自启nfs服务 systemctl enable rpcbind #开机自启rpcbind服务
1.3 nfs特点
采用TCP/IP传输网络文件
安全性低
简单易操作
适合局域网环境
1.4 nfs 工作原理
NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中来看,那个远程主机的目录就好像是自己的一个磁盘分区一样,在使用上相当便利
1.5 nfs工作流程图
1.首先服务器端启动RPC服务,并开启111端口
2.服务器端启动NFS服务,并向RPC注册端口信息
3.客户端启动RPC(portmap服务),向服务端的RPC(portmap)服务请求服务端的NFS端口
4.服务端的RPC(portmap)服务反馈NFS端口信息给客户端。
5.客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输。
1.6 挂载原理
当我们在NFS服务器设置好一个共享目录/opt后,其他的有权访问NFS服务器的NFS客户端就可以将这个目录挂载到自己文件系统的某个挂载点,这个挂载点可以自己定义,如上图客户端A与客户端B挂载的目录就不相同。并且挂载好后我们在本地能够看到服务端/opt的所有数据。
二、nfs 部署
三台服务器
2.1、先安装nfs和rpcbind
2.2、启动服务先启动rpcbind再启动nfs(因为nfs要向rpc注册端口)
[root@localhost ~]# systemctl start rpcbind
[root@localhost ~]# systemctl start nfs
[root@localhost ~]# systemctl enable rpcbind
[root@localhost ~]# systemctl enable nfs
[root@localhost ~]# systemctl status rpcbind
[root@localhost ~]# systemctl status nfs
2.3、NFS配置文件的设置
[root@localhost ~]# vim /etc/exports
[root@localhost ~]# systemctl restart rpcbind
[root@localhost ~]# systemctl restart nfs
[root@localhost ~]# exportfs -v
/opt/web 192.168.111.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,no_root_s
quash,no_all_squash)
2.4、客户端
安装http服务
2.5、将共享目录挂载到网页目录
2.6、启动httpd服务
2.7、修改文件,此时192.168.94.19也会改变
网页测试
第三台一样操作