192.168.1.1-路由器设置 | 192.168.0.1-无线路由器设置

云盘关闭潮不用怕,自己搭建NFS环境

发布时间:2016-11-09 17:39

最近360云盘宣布关闭后,网盘几乎只剩下百度一家。个人存储何处去?其实还是自己做自己的NFS更加靠谱。下面就给大家分享一些相关的技术教程。

一.简介
什么是NFS?    NFS是网络文件系统network file system的缩写,他的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录。
比较适用于IDC机房,集群。工作中NFS一般被用来存储视频,图片,附件等静态文件,或者理解为用户上传的文件都适合放到NFS共享里。
还有一个类似的服务叫samba,它更像是windows的文件共享,多用于办公场景。

二.不得不说
要成功运行nfs服务,还需要rpcbind的支持(在Centos6之前叫portmap)。本人比较俗,所以俗语解释就是rpcbind就是个租房的中介,要想挂载共享目录(好比租到房子)没它不行。
下面有盗图一张,清楚的说明了rpcbind的作用。

三.实验环境准备
首先准备两台虚拟机,系统为CentOS6.3 x64,一台服务器,一台客户端。都需要安装 nfs-utils 和rpcbind ,关闭selinux和防火墙。

四.开始搭建nfs-server 服务器
安装 nfs-utils和rpcbind服务,安装完后检查一下

启动rpcbind服务,并检查

rpcbind服务运行在tcp/udp的111端口

# rpcinfo p localhost   查看当前的资源池

启动nfs服务,并检查

查看nfs的主端口号2049

# vim /etc/rc.local  编辑/etc/rc.local文件,将rpcbind,nfs-utils加入开机自启动
注意顺序:rpcbind在前,nfs-utils在后

接下来就该编辑nfs的配置文件。路径为 /etc/exports,默认该文件为空

将/data目录做为将要共享的目录,* 表示任意主机都可以访问,并且有读写权限,sync为客户端可以同步写入服务器磁盘,保证文件不会丢失

创建 /data目录,并在创建几个子目录,方便后面实验

reload可以实现平滑加载服务,不影响在线客户

查看本机有哪些共享目录(showmount e 127.0.0.1  也可)

本机挂载本机的共享目录测试,挂载点为 /mnt

五.客户端配置

同样需要安装 nfs-utils 和 rpcbind

确定rpcbind服务正常运行

# vim /etc/rc.local    将rpcbind服务加入开机启动

测试能否与nfs-server通信,并查看有哪些共享目录

将 /data 目录挂载到nfs-test1的本地 /mnt目录下

访问成功

但是通过nfs-test1无法在共享目录的 /mnt 目录中创建任何文件,是因为在nfs-server服务器端的配置权限中,默认都是以65534用户登录的,该文件的路径为 /var/lib/nfs/etab
介个65534就是nfs服务的伪用户了,可以在 /etc/passwd 中查看他叫啥。如下图:为用户名称为 nfsnobody

更改共享目录的属主,将其该为nfsnobody

做了改变,来个平滑加载吧

在回到nfs-test1中测试一下,可以实现之前给/data目录设置的rw权限了,但是创建的目录文件用户的属主属组都为nfsnobody


最后将挂载目录加到开机启动中就好了 /etc/rc.local

ok。测试成功。

六.nfs服务重点总结
/etc/exports       服务主配置文件,nfs具体共享服务的地点,默认为空。
showmount e 192.168.87.135      挂载前检查有权限需要挂载的信息,是否能够挂载
关于开机自启动:
1)/etc/rc.local    缺点:偶尔开机挂不上,工作中除了开机自启动配置,还要对是否挂载上进行监控
2)/etc/fstab    fstab优先于网络被linux系统加载。网络没启动,fstab肯定会导致nfs服务器端无法实现开机挂载

关于我们 - RSS地图 - 最近更新 - 友情链接 - 网站地图 - 版权声明