简介:NFS 也就是网络文件系统,它是一种分散式的。在文件或者信息传送的时候,NFS 得依靠 RPC 协议。通过网络,能让不同的计算机、不同的操作系统一起共享目录和文件,这样客户端就能通过网络去访问,还能把文件分享到服务端的磁盘里。NFS 是 SUN 公司搞出来的,专门给 UNIX/LINUX 机器用,方便它们共享资源。NFS 服务端设置不难,主要就是弄好 /etc/exports 文件,然后运行 exportfs -a 给共享出来。客户端呢,可以用挂载的办法,把 NFS 服务器共享的数据目录挂到本地系统里。
NFS 网络文件系统跟 Windows 系统的网络共享服务挺像的,跟 linux 的 samba 服务也差不多。不过一般来说,公司内部的局域网共享多数用的是 Windows 网络共享服务或者 samba 服务,在互联网上,中小型网站集群架构的后端经常用 NFS 来共享数据。要是大型网站,可能就得用到更复杂的分布式文件系统,像 Moosefs(mfs)和 GlusterFS 啥的。
这篇文章主要说的是在 Linux 环境里 NFS 服务的部署还有挂载的操作过程,详细的情况您看下面的内容。
一、访问Linux系统
1.访问Linux系统
2.查看Linux版本信息
二、Linux服务端部署NFS服务
1.部署NFS服务
执行指令# yum -y install nfs-utils
2.启动nfs和rpcbind服务
执行指令# systemctl start nfs
执行指令# systemctl start rpcbind
查看nfs和rpcbind服务的运行状态
3.配置开机自启动服务
执行指令# systemctl enable nfs
执行指令# systemctl enable rpcbind
4. 防火墙允许服务通过
执行指令# firewall-cmd --zone=public --permanent --add-service={rpc-bind,nfs,mountd}放行rpc-bind,nfs,mountd服务
执行指令# firewall-cmd --reload 重启防火墙
或者通过服务对应的端口的方式设置防火墙放行端口类表如下:
5.创建需要共享的目录
执行命令# mkdir /datadisk/OAattachmen
6.配置nfs共享文件
说明:修改/etc/exports,增加以下内容:
/datadisk/OAattachment *(rw,sync,no_root_squash)
备注:使用 * 表示访问不加限制
/datadisk/Oaattachment *(rw,sync,no_root_squash)
此处rw表示可读写,sync表示文件同时写入硬盘和内存。
7. 查看本地nfs共享目录
执行指令# showmount -e localhost
或者执行指令# exportfs -arv
三、Linux客户端挂载NFS分区
1.创建需要挂载nfs目录
执行指令# # mkdir /mnt/nfs
2.添加服务端nfs共享目录
执行指令# mount -t nfs 172.16.**.**:/datadisk/OAattachment /mnt/nfs
3.在挂载后的nfs分区进行读写
执行指令# touch test{1,2,3}创建三个文件
然后执行指令# rm test{1,2,3}删除这三个文件
4.设置客户端自启动装载nfs
(1)客户端编辑/etc/fstab
执行指令# vim /etc/fstab在最后添加内容
172.16.23.38:/datadisk/OAattachment /mnt/nfs/ nfs defaults 0 0
(2)然后执行指令# systemctl daemon-reload重新加载,即可实现重启后自动挂载。
四、NFS服务的几个相关知识
1.NFS的两个配置文件
(1) /etc/exports:NFS配置文件;
(2) /var/lib/nfs/*tab:NFS服务器日志放置路径;etab记录共享出来的目录完整权限设置值;xtab记录曾经连接到此NFS主机的相关客户端数据。
2.NFS的两个配置命令
(1) /usr/sbin/exportfs:维护NFS共享资源;重新共享/etc/exports变更目录或将NFS server共享目录卸载或重新共享;
(2) /usr/sbin/showmount:在客户端查看NFS服务器共享出来的目录资源。
3.NFS的几个常用目录