【nfs服务部署服务端和客户端搭建】

原理

NFS(Network File System)是文件服务器之一。它的功能是可以通过网络,让不同的机器、不同的操作系统可以彼此共享数据文件。
NFS服务器可以让服务端的共享目录挂载到本地端的文件系统中,其他服务器如果想访问共享目录,那可以在本地服务器上安装客户端,并在客户端上设置映射,这样在本地端的系统中看来,远程主机的目录就好像自己的一个磁盘分区(partition)一样,相互使用比较便利。

背景

平台导出的报告,期望生成的文件可以共享

环境配置

ip用途
192.168.0.1服务端
192.168.0.2客户端,设置多个文件映射到同一个目录
192.168.0.3客户端

步骤

服务端部署

##首先查看一下自己是否已下载nfs和rpc的安装包,如果安装了就不需要了,目前看麒麟操作系统有默认安装

rpm -qa nfs-utils rpcbind

1、在线安装rpc、nfs服务端,服务端有先后顺序

yum install  -y   rpcbind nfs-utils

2、执行命令启动 NFS 服务

systemctl start rpcbind
systemctl start nfs-server

3、执行命令将务设置为开机自启动

systemctl enable rpcbind
systemctl enable nfs-server

#查看是否启用成功
systemctl status rpcbind
systemctl status nfs-server

4、创建共享目录

1)服务端创建共享目录
mkdir -p /share
chmod -R 777 /share

2)配置文件设置
vi /etc/exports
#添加内容,设置客户端访问范围*代表所有,
/share 192.168.10.0/24(rw,no_root_squash,no_all_squash,sync)
/share *(rw,no_root_squash,sync)

#5、在服务端所在的服务器上

#查看NFS已开启目录
rpcinfo -p localhost
#查看NFS已加载共享目录
showmount -e ip地址#这里ip是服务端地址

6、在防火墙上添加开放端口

1. portmap 端口 111 udp/tcp;
2. nfsd 端口 2049 udp/tcp;
3. /etc/services查看,mountd 端口 20048


firewall-cmd --zone=public --add-port=111/tcp --permanent
firewall-cmd --zone=public --add-port=2049/tcp --permanent
firewall-cmd --zone=public --add-port=20048/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports


或者执行以下命令开放 NFS 服务的端口:
sudo firewall-cmd --permanent --zone=public --add-service=nfs
sudo firewall-cmd --permanent --zone=public --add-service=rpc-bind
sudo firewall-cmd --permanent --zone=public --add-service=mountd
sudo firewall-cmd --reload

客户端部署

1、客户端安装

yum install nfs-utils -y

2、启动服务

systemctl start nfs-server

3、执行命令将 NFS 服务设置为开机自启动

systemctl enable nfs-server

综合命令

yum install nfs-utils -y && systemctl start nfs-server && systemctl enable nfs-server

4、确认要共享到服务端的路径
/opt/pipt-flask-01/app/api/piptool/biz/assets
/opt/pipt-flask-01/app/api/piptool/
/opt/pipt-flask-02/app/api/piptool/biz/assets
/opt/pipt-flask-02/app/api/piptool/logs

5、配置vi /etc/fstab

服务器ip:服务器共享路径 客户端需要映射的路径 nfs defaults 0 0

如下示例
在这里插入图片描述
6、自动挂载

 mount -a

7、查看挂载是否成功

df -haT
-a, --all:显示所有文件系统,包括虚拟文件系统
-h, --human-readable:以人类可读的格式显示输出结果。
-T, --print-type:显示文件系统的类型。

在这里插入图片描述
8、验证
可以在客户端目录下创建文件,然后再服务端映射的共享目录下查看是否同步,反之亦然

问题

1、在服务端上不设置NFS主要开放port,那么客户端访问查看共享目录是看不到的,showmount -e ip地址#这里ip是服务端地址

1. portmap 端口 111 udp/tcp;
2. nfsd 端口 2049 udp/tcp;
3. /etc/services查看,mountd 端口 20048

2、如果在客户端共享的目录下存在文件,而在服务端创建的共享目录是空的,此时设置映射后,客户端的目录则同步清空,所以在设置映射之前需要把客户端对应的目录文件备份一下,映射之后再放进来。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值