- 一、NFS
- 1.1 概述
- 1.2 相关软件包
- 1.3 nfs特点
- 1.4 nfs 工作原理
- 1.5 nfs工作流程图
- 1.6 挂载原理
- 二、nfs 部署
- 2.1 主服务器配置 IP 192.168.161.128
- 2.2二、客户端配置
- 2.3 检验
- 总结:
引言: 阐述了多个客户端通过一台服务器达到数据互通 一、NFS 1.1 概述
NFS 是一种基于 TCP/IP 传输的网络文件系统协议,最初由 sun 公司开发。通过使用 NFS协议,客户机可以像访问本地目录一样访问远程 NFS 服务器中的共享资源。
NFS 也是 NAS存储设备必然支持的一种协议,但是因为没有用户认证机制,而且数据在网络上明文传输,安全性很差,所以一般只能在局域网中使用。
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连接并进行数据的传输。
当我们在NFS服务器设置好一个共享目录/opt后,其他的有权访问NFS服务器的NFS客户端就可以将这个目录挂载到自己文件系统的某个挂载点,这个挂载点可以自己定义,如上图客户端A与客户端B挂载的目录就不相同。并且挂载好后我们在本地能够看到服务端/opt的所有数据。
[root@localhost li]# yum install -y rpcbind nfs-utils ##三台主机安装nfs服务 [root@localhost li]# mkdir /nfs ###创建共享文件 [root@localhost li]# chmod -R 775 /nfs ###设置共享文件权限 [root@localhost li]# vim /etc/export ###编辑 /var/www/html 192.168.161.0/24(rw,sync,no_root_squash) rw表示共享的主机只有读写权限,sync表示数据会同步写入到内存和 硬盘中,no_root_squash非root可用 配置文件格式:共享目录 共享主机 [root@localhost li]# exportfs -a ###刷新 [root@localhost li]# systemctl start nfs rpcbind ###启动服务 [root@localhost li]# systemctl enable nfs rpcbind ###设置开机自启 Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.2.2二、客户端配置
① IP 192.168.161.14
[root@localhost home]# yum -y install rpcbind nfs-utils ##安装共享服务 [root@localhost home]# mkdir /tmp/nfs ##3创建共享文件 [root@localhost home]#systemctl start nfs ###启动服务 [root@localhost home]# systemctl enable nfs ###设置开机自启 Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service. [root@localhost home]#systemctl status nfs ###查看状态 [root@localhost home]# mount -t nfs 192.168.161.128:/var/www/html /var/www/html
②IP192.168.161.12
[root@liang liang]# yum install -y rpcbind nfs-utils ###安装共享服务 [root@liang liang]# mkdir /tmp/nfs ###创建共享文件 [root@liang liang]# systemctl start nfs ###启动服务 [root@liang liang]# systemctl enable nfs ###设置开机自启 Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service. [root@liang liang]# systemctl status nfs ###查看状态 [root@liang liang]# showmount -e 192.168.161.128 Export list for 192.168.161.128: /var/www/html 192.168.161.0/24 [root@liang liang]# mount -t nfs 192.168.161.128:/var/www/html /var/www/html [root@localhost liang]# cd /var/www [root@localhost www]# cd /html [root@localhost html]# echo "daociyiyou ">>/var/www/html/index.html [root@localhost html]# ls 22.txt index.html2.3 检验
nfs服务可以帮助在局域网内数据互相访问,但是当服务器宕机时各个客户机的数据将无法同步



