NFS 是 Network File System (网络文件系统),主要是通过网络让不同的服务器之间可以共享文件或目录。可以通过挂载的方式让 NFS 服务器共享的目录挂载到 NFS 客户端本地目录下。
NFS服务端:192.168.31.100 NFS客户端:192.168.31.101
服务端
安装NFS
查看 NFS 是否安装
rpm -qa | grep nfs
安装 NFS
yum install nfs-utils
显示挂载信息
showmount -e
配置共享目录
创建 NFS 共享目录
mkdir /data/nfs
NFS 服务配置文件
vim /etc/exports
exports
文件:
# exports 常用参数
# ro 只读
# rw 读写
# root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户
# no_root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员
# all_squash 无论NFS客户端使用什么账户访问,均映射为NFS服务器的匿名用户
# sync 同时将数据写入到内存与硬盘中,保证不丢失数据
# async 优先将数据保存到内存,然后再写入硬盘。这样效率更高,但可能会丢失数据
/data/nfs 192.168.31.0/24(rw,sync,no_root_squash)
192.168.31.0/24 表示可以容纳254个主机(从192.168.31.1到192.168.31.254)
启动 NFS
启动 NFS 并设置开机自动启动
systemctl restart rpcbind && systemctl enable rpcbind
systemctl restart nfs-server && systemctl enable nfs-server
rpcbind是用于NFS服务的,在NFS服务启动之前,必须先启动rpcbind服务。
NFS 在文件传送过程中依赖于 RPC 协议
客户端
挂载 NFS
# 显示NFS服务器192.168.31.100上可供挂载的文件系统
showmount -e 192.168.31.100
# 挂载192.168.31.100服务器上/data/nfs目录到本地/data/nfs目录下
mount -t nfs 192.168.31.100:/data/nfs /data/nfs
测试:在服务端创建测试文件后在客户端查看是否同步
客户端取消挂载
# 切换到根目录执行
umount /data/nfs
关闭 NFS
编辑清空 /etc/exports
文件
在服务器上重新加载NFS配置文件
exportfs -r
关闭服务
systemctl stop rpcbind && systemctl disable rpcbind
systemctl stop nfs-server && systemctl disable nfs-server
文档信息
- 本文作者:carpe
- 本文链接:https://carpedx.com/2023/09/16/linux_nfs/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)