多台LINUX服务器之间配置NFS共享文件

NFS即网络文件系统,允许与他人共享目录和文件。

一:如果是腾讯云,服务器又是在国内;可以看这个教程-https://cloud.tencent.com/document/product/582/11523

 


二:如果是阿里云,阿里云支持国外服务器;可以看这个教程-https://help.aliyun.com/document_detail/27526.html?spm=a2c4g.11186623.6.556.515253dff5wltn

 

三:如果服务器在海外或者在国内又不想用腾讯云或者阿里云自带的NFS文件存储,那就自己配置一台NFS服务器,步骤如下:

第一步:准备两台服务器

  NFS服务器 a1    172.30.0.1

  客户端服务器a2      172.30.0.2

这里的服务器IP必须是内网,并且还在同一个地域下

第二步:在a1服务器上安装NFS,命令如下

  yum -y install rpcbind nfs-utils

1:[root@a1 ~]# yum -y install rpcbind nfs-utils

2:在a1服务器启动NFS,并设置开机自启动,这里是先启动 rpcbind 服务,在启动 NFS 服务,顺序不能错

[root@a1 ~]# systemctl start rpcbind
[root@a1 ~]# systemctl enable rpcbind
[root@a1 ~]# systemctl start nfs-server
[root@a1 ~]# systemctl enable nfs-server

3:在a1服务器新建挂载点;mkdir /wwwroot

[root@a1 ~]# mkdir /wwwroot

4:修改NFS服务器的配置文件/etc/exports,将新建的挂载点 /wwwroot 文件夹共享出去

[root@a1 ~]# vim /etc/exports

在vim模式下按一下键盘 i 键进入输入模式,把这一句添加进去 /wwwroot  *(rw,sync,no_root_squash)  或者 /wwwroot  172.30.0.2(rw,sync,no_root_squash)

在按ESC键,输入 :wq! 保存并退出

5:重新读取配置文件 exportfs -arv

[root@a1 ~]# exportfs -arv

返回 exporting *:/wwwroot  或者返回 exporting 172.30.0.2:/wwwroot ,就表示配置成功了

 

第三步:在 a2 服务器上安装NFS,命令如下

  yum -y install rpcbind nfs-utils

1:[root@a2 ~]# yum -y install rpcbind nfs-utils

 

2:在a2服务器启动rpcbind,注意客户端不用启动NFS服务,并设置开机自启动

[root@a2 ~]# systemctl start rpcbind

[root@a2 ~]# systemctl enable rpcbind

3:在a2服务器上新建待挂载文件夹  /wwwroot

[root@a2 ~]# mkdir /wwwroot

4:a2 服务器上测试是否可以挂载 a1 服务器  showmount -e 172.30.0.1

[root@a2 ~]# showmount -e 172.30.0.1

返回下面的代码就是可以挂载

Export list for 172.30.0.1:
/wwwroot *   或者 /wwwroot 172.30.0.1

5:在 a2 上先手动挂载 mount -t nfs 172.30.0.1:/wwwroot  /wwwroot

[root@a2 ~]# mount -t nfs 172.30.0.1:/wwwroot  /wwwroot

没有返回代表挂载成功

6:检测是否挂载成功  df -h

[root@a2 ~]# df -h

返回结果中有下面代码就代表已经挂载成功了

172.30.0.1:/wwwroot 50G 0 0 0% /wwwroot

 

7:在 a2 服务器上做开机自动挂载: vim /etc/fstab

[root@a2 ~]# vim /etc/fstab

把这句加在最后  172.30.0.1:/wwwroot /wwwroot nfs defaults 0 0   然后保存退出

 

第四步:测试

1:在a1服务器操作:cd /wwwroot;ls

[root@a1 ~]# cd /wwwroot;ls

发现什么都没有返回

2:在a1服务器的/wwwroot文件夹下面创建一个 a1 文件夹 mkdir /wwwroot/a1;cd /wwwroot;ls;

[root@a1 ~]#  mkdir /wwwroot/a1;cd /wwwroot;ls;

返回 a1

3:在a2服务器操作:cd /wwwroot;ls

[root@a2 ~]# cd /wwwroot;ls

返回 a1 现在就成功了

4:在a2服务器 /wwwroot 文件夹下面新建文件夹  a2 ;   mkdir /wwwroot/a2;cd /wwwroot;ls;

[root@a2 ~]#  mkdir /wwwroot/a2;cd /wwwroot;ls;

返回 a1  a2   

5:现在去a1服务器输入 cd /wwwroot;ls

[root@a1 ~]#  cd /wwwroot;ls 

返回 a1  a2   

 

第五步:注意事项

1:NFS要用到的IP必须是同一个地域下的内网IP;这个坑我是踩过,一定要注意

2:如果还要几台服务器需要共享 a1 服务器下面 /wwwroot 文件夹内容的话,可以直接把 a2 做成镜像,然后在去新建服务器 a3 选择镜像的时候就用 a2 做的镜像就可以了,这样 a3 服务器就不用去重新安装NFS了,直接去 a3 服务器输入 cd /wwwroot;ls; 返回的也是 a1  和 a2 

3:如果服务器多于两台以上需要共享a1的 /wwwroot 文件夹时, 上面第二步中的第5就要设置成 exporting *:/wwwroot 或者 exporting 172.30.0.0/24:/wwwroot     * 代表所有客户端都可以访问,172.30.0.0/24这个代表IP段,只要在这个IP段的内网都可以访问,不管是 * 还是 IP 段都要保证同一个地域下

 4:腾讯云和阿里云自带的文件存储也可以把一台服务器做成镜像,和第五步里面的第2步一样就可以了

posted @ 2019-06-13 13:51  qq_172913965  阅读(118)  评论(1)    收藏  举报