参考网址:
https://blog.csdn.net/m0_46674735/article/details/110038148 rpcbind结合nfs实现文件共享
https://blog.csdn.net/J080624/article/details/104266563 Centos下nfs+rpcbind实现服务器之间的文件共享
https://blog.csdn.net/huaz_md/article/details/136661331 Linux之NFS网络文件系统详解
https://support.huawei.com/enterprise/zh/knowledge/EKB1100075782 NFS共享常见挂载问题总结
1. 概述

1.1. NFS 介绍
NFS 就是 Network FileSystem 的缩写,最早之前是由 Sun 这家公司所发展出来的 (注1)。 它最大的功能就是可以透过网络,让不同的机器、不同的操作系统、可以彼此分享个别的档案 (share files)。所以,你也可以简单的将他看做是一个文件服务器 (file server) 呢!这个 NFS 服务器可以让你的 PC 来将网络远程的 NFS 服务器分享的目录,挂载到本地端的机器当中, 在本地端的机器看起来,那个远程主机的目录就好像是自己的一个磁盘分区槽一样 (partition)!使用上相当的便利!
1.2. RPC 介绍
RPC 最主要的功能就是在指定每个 NFS 功能所对应的 port number ,并且回报给客户端,让客户端可以连结到正确的埠口上去。 那 RPC 又是如何知道每个 NFS 的埠口呢?这是因为当服务器在启动 NFS 时会随机取用数个埠口,并主动的向 RPC 注册,因此 RPC 可以知道每个埠口对应的 NFS 功能,然后 RPC 又是固定使用 port 111 来监听客户端的需求并回报客户端正确的埠口, 所以当然可以让 NFS 的启动更为轻松愉快了!
1.3. 注意
要启动 NFS 之前,RPC 就要先启动了,否则 NFS 会无法向 RPC 注册。 另外,RPC 若重新启动时,原本注册的数据会不见,因此 RPC 重新启动后,它管理的所有服务都需要重新启动来重新向 RPC 注册。
2. 搭建(nfs + rpcbind)
2.1. NFS 服务器端(nfs + rpcbind)
2.1.1. 安装 rpc 服务和 nfs 服务
yum -y install rpcbind nfs-utils
2.1.2. 启动服务
先开启rpc服务:service rpcbind start
再开启nfs服务:service nfs start
2.1.3. 查看服务
service rpcbind status
service nfs status
2.1.4. 配置 nfs 服务
创建共享目录:mkdir -p /opt/nfs/ftp
设置权限: chmod -R 777 /opt/nfs/ftp
修改nfs的配置文件:vim /etc/exports
配置内容如下:/opt/nfs/ftp <client_ip>(rw,no_root_squash)
cat /etc/exports
/opt/nfs/ftp <client_ip>(rw,no_root_squash)
/etc/exports 配置文件的语法与参数

重新读取配置文件:exportfs -rv
exporting 42.194.239.141:/opt/nfs/ftp
2.1.5. 查看
showmount -e <server_ip>
[root@hcss-ecs-af45 ftp]# showmount -e
Export list for hcss-ecs-af45:
/opt/nfs/ftp <server_ip>2.2. NFS 客户端(nfs)
2.2.1. 安装
安装 nfs:yum -y install nfs-utils
2.2.2. 查看
查看 NFS server 上所有的共享目录:showmount -e <server_ip>
[root@hcss-ecs-af45 ftp]# showmount -e
Export list for hcss-ecs-af45:
/opt/nfs/ftp <server_ip>2.2.3. 将 nfs server 的共享目录挂载到本地的 /app 下
临时挂载 mount:mount -t nfs <server_ip>:/opt/nfs/ftp /app
永久挂载:修改/etc/fstab 配置文件
vim /etc/fstab,在最后添加一行:<server_ip>:/opt/nfs/ftp /app nfs defaults 0 0
2.2.4. 查看挂载结果 mount | grep nfs
[root@VM-12-6-centos ~]# mount | grep nfs
<server_ip>:/opt/nfs/ftp on /app type nfs4 (rw,relatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=<clientaddr>,local_lock=none,addr=<server_ip>)2.3. 测试
略
3. 一些 tips
3.1. showmount -e <ip>、mount
showmount 命令来自英文词组 show mounted disk 的缩写,其功能是显示 NFS 服务器的共享信息。
showmount -e <ip> 可以在服务器端、客户端执行,会显示 NFS 服务器端挂载的目录;
mount 是挂载命令,在客户端执行。在客户端查看,可以看挂载的形式。