NFS (Network File System)

NFS 简介

NFS(Network File System)是一种分布式文件系统协议,允许用户通过网络访问远程计算机上的文件,就像访问本地文件一样。NFS 由 Sun Microsystems 在 1984 年开发,现已成为 UNIX 和 Linux 系统中广泛使用的文件共享协议。

NFS 工作原理

NFS 基于客户端-服务器架构。NFS 服务器将其文件系统的一部分导出(export)给网络上的客户端,客户端通过挂载(mount)这些导出目录来访问远程文件。NFS 使用远程过程调用(RPC)机制来实现客户端与服务器之间的通信。通过 RPC,客户端可以请求服务器执行文件操作,如读取、写入和删除文件等。NFS 还支持文件锁定和缓存机制,以提高性能和数据一致性。

NFS yum 安装

yum install nfs-utils rpcbind -y

# 启动服务
systemctl start rpcbind
systemctl start nfs-server
systemctl enable rpcbind
systemctl enable nfs-server

# 配置防火墙
firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --reload

# 创建共享目录,配置权限
mkdir -p /data/nfs
chmod 777 /data/nfs

# 配置 /etc/exports 文件
echo "/data/nfs *(rw,sync,no_root_squash)" >> /etc/exports

# 重新导出共享目录
exportfs -r
exportfs -v

# 验证共享目录
showmount -e localhost

# 挂载测试
mount -t nfs localhost:/data/nfs /mnt
ls /mnt