- NFS概念
NFS是Network File System(网络文件系统),主要功能是通过网络让不同的服务器之间可共享文件或者目录。NFS客户端一般是应用服务器(比如web,负载均衡等),可以通过挂载的方式将NFS服务器端共享的目录挂载到NFS客户端本地的目录下。 - NFS工作原理
启动RPC服务
启动NFS服务
客户端请求NFS服务
RPC把端口和IP地址给客户端 - NFS协议
NFS在文件传送过程中依赖与RPC(远程过程调用)协议。
NFS本身是没有提供信息传送的协议和功能的,但是能够用过网络进行图片,视频,附件等分享功能。只要用到NFS的地方都需要启动RPC服务,不论是NFS的服务端还是客户端。 - NFS端口
TCP 111 2049
二.NFS服务器安装及配置
1.关闭防火墙和selinux
systemctl stop firewalld
setenforce 0
2.安装NFS服务器
NFfS服务rcpbind,rfc为nfs-utils
yum install rpcbind -y
yum install nfs-utils -y
3.配置NFS服务
3.1 NFS服务器端建立NFS共享文件
mkdir /nfs.dir
chmod -Rf 777 /nfs.dir
3.2 NFS服务的配置文件
/etc/exports nfs配置文件默认为空
/nfs.dir 共享给本网段所有主机,且拥有读写权限,在将数据写入到NFS服务器的硬盘中后才会结束操作,最大限度保
证数据不丢失
vi /etc/exports
/nfs.dir 192.168.11.* (rw,sync,root_squash)
//根据自己虚拟机ip网段设置
#exports配置常用参数
#ro 只读
#rw 读写
#root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户
#no_root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员
#all_squash 无论NFS客户端使用什么账户访问,均映射为NFS服务器的匿名用户
#sync 同时将数据写入到内存与硬盘中,保证不丢失数据
#async 优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据
4. 启动NFS服务
systemctl start/restart rpcbind
systemctl start/restart nfs-server
5. 客户端测试
#另起虚拟机,此处测试最好在其它机器测试。
#showmount,主要使用命令来查询共享信息。
yum install showmount -y
showmount -e 192.168.11.128
Export list for 192.168.11.128:
/nfs.dir (everyone)
mount -t nfs 192.168.11.128:/nfs.dir /mnt
#如果想要开机自动挂载,编辑 /etc/fstab文件
df
192.168.11.128:/nfs.dir 17811456 1049088 16762368 6% /mnt
在NFS服务器端:
cd /nfs.dir
touch file
mkdir dir
在客户端的/mnt 下 ls 会发现多出文件file和目录dir.
同样的在客户端/mnt 目录下创建文件目录会在服务器端的/nfs.dir下存在。