nfs网络共享


安装

# 查询是否有安装NFS，客户端只需要安装nfs-utils
rpm -qa nfs-utils rpcbind

# 如果没有安装，请安装，客户端只需要安装nfs-utils
yum install -y nfs-utils rpcbind

# 查看服务启动状态
systemctl status rpcbind

# 如果rpc服务器没有启动请启动，只有服务器端需要启动
systemctl enable rpcbind
systemctl start rpcbind

# 查看prc注册情况
rpcinfo -p localhost

# 查看nfs服务状态
systemctl status nfs 

# 启动NFS服务
systemctl enable nfs
systemctl start nfs
# 也可以是 systemctl start nfs-server

# 再次查看prc注册情况，应该会多了几个nfs相关的
rpcinfo -p localhost

服务器端

# 编写共享配置文件
vi /etc/exports
# 格式为: nfs共享目录 客户端地址(参数1,参数2)
# nfs共享目录要使用绝对路径
# 参数说明
# rw：目录读写
# sync：将数据同步写入内存缓冲区与磁盘中，效率低，但可以保证数据的一致性
# all_squash：将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody)
# async 将数据先写入缓存，可以提高效率
# no_subtree_check 如果共享/usr/bin之类的子目录时，不检查父目录权限
# no_root_squash 当登录主机共享目录的使用者是root时，将其选项转换为nobody

/data/share *(rw,sync,all_squash,root_squash)

# 创建需要共享的文件夹
mkdir -p /data/share

# 修改文件夹权限
chown nfsnobody:nfsnobody /data/share

# 重新加载nfs配置
exportfs -rv

# 查看服务器挂载
showmount -e localhost

客户端

# 客户端不需要启动nfs和rpcbind，但是需要安装nfs-utils

yum install -y nfs-utils

systemctl disable nfs

systemctl disable rpcbind

# 创建文件夹
mkdir -p /data/nfs

# 挂载
mount -t nfs nfs-share.vpclub.local:/data/share /data/nfs

# 查看挂载
df -h

# 取消挂载
umount /mnt/home/vpclub/nfs

# 开机自动挂载
# vi /etc/fstab
# nfs-share.vpclub.local:/data/share /data/nfs nfs defaults,_netdev 0 0
echo "nfs-share.vpclub.local:/data/share /data/nfs nfs defaults,_netdev 0 0" >> /etc/fstab # 写入到开机自动挂载

