NFS的SERVER分两部分:
1、RPC 主程序:rpcbind
NFS 本质是一个 RPC 服务,而要启动任何一个 RPC 服务之前,都需要做好 port 的对应 (mapping) 的工作才行,这个工作其实就是『 rpcbind 』这个服务所负责的!也就是说, 在启动任何一个 RPC 服务之前,我们都需要启动 rpcbind 才行! (在 CentOS 5.x 以前这个软件称为 portmap,在 CentOS 6.x 之后才称为 rpcbind 的!)
2、NFS 主程序:nfs-utils
就是提供 rpc.nfsd 及 rpc.mountd 这两个 NFS daemons 与其他相关 documents 与说明文件、执行文件等的软件!这个就是 NFS 服务所需要的主要软件!
安装服务端NFS Server
yum install nfs-utils rpcbind -y
sudo apt install nfs-kernel-server
客户端不提供服务,所以不用装rpcbind
yum install nfs-utils
sudo apt install nfs-common
将NFS和rpcbind加入开机启动
systemctl enable --now rpcbind
systemctl enable --now nfs
客户端不用启用任何服务
服务端检查是否安装nfs:
rpm -qa | grep nfs与 rpm -qa | grep rpcbind即可
停止服务端的nfs server的方法:
systemctl stop nfs
systemctl stop rpcbind
配置共享目录
在服务端配置一个共享目录
$ mkdir /data
$ chmod 755 /data
根据这个目录,相应配置导出目录
$ vi /etc/exports
添加如下配置 /data/ 192.168.0.0/24(rw,sync,no_root_squash,no_all_squash)
/data: 共享目录位置。
192.168.0.0/24: 客户端 IP 范围,* 代表所有,即没有限制。
rw: 权限设置,可读可写。
sync: 同步共享目录。
no_root_squash: 可以使用 root 授权。
no_all_squash: 可以使用普通用户授权。
在客户端上查询server:
showmount -e 10.0.6.10
mount -t nfs 192.168.0.1:/data /mnt/nfs
取消挂载
umount /app/file
fuser /app/file
umount -d -l /app/file
fuser -m -v -i -k /app/file