NFS文件服务器
了解NFS服务
什么是NFS服务?
NFS全名是Network File System,又叫网络文件系统,是由Sun Microsystems在1984年提出的一种分布式文件系统协议,允许客户端通过网络挂载服务器上的目录,并像访问本地文件一样操作远程文件。
NFS的特点和应用场景
特点:
- 跨平台(Linux/Unix 常见,Windows 也支持通过插件/工具)。
- 高效共享:一个目录可被多个客户端同时挂载。
- 简单:使用TCP/UDP的2049端口。
- 依赖 RPC 服务(portmap/rpcbind)。
应用场景:
- 集群共享目录(如 Web 集群共享代码目录、存储集群共享数据)。
- 虚拟化环境共享 ISO 或配置文件。
- 研发团队共享公共资源。
NFS服务搭建
服务端安装
CentOS系统安装
yum -y install nfs-utils
Ubuntu系统安装
apt -y install nfs-kernel-server
简单使用NFS
创建共享目录并授权
mkdir -p /data/nfs_share
chmod -R 777 /data/nfs_share
编辑配置文件:/etc/exports
/data/nfs_share 192.168.1.0/24(rw,sync,no_root_squash,no_all_squash)
NFS服务管理
# 启动samba服务
systemctl start nfs-server
# 设置自启动samba服务
systemctl enable nfs-server
# 查看samba服务状态
systemctl status nfs-server
客户端安装
CentOS系统安装
yum -y install nfs-utils
Ubuntu系统安装
apt -y install nfs-common
测试阶段
使用客户端工具进行挂载
mount -t nfs 192.168.1.100:/data/nfs_share /mnt
持久挂载写入/etc/fstab文件
# /etc/fstab
192.168.1.100:/data/nfs_share /mnt nfs defaults 0 0
配置参数详解
配置格式,如下所示:
共享目录 允许地址(权限列表使用','号隔开)
允许地址可以是IP地址,也可以是网段(比如:192.168.1.0/24),还可以是*表示全部允许。
参数解释:
- rw:读写权限。
- ro:只读。
- sync:同步写入磁盘(安全)。
- async:异步写入,性能高但可能丢数据。
- no_root_squash:客户端的 root 用户在共享目录也有 root 权限。
- root_squash:客户端的 root 用户映射为匿名用户(安全推荐)。
- all_squash:所有用户映射为匿名用户。
- anonuid, anongid:指定匿名用户的UID/GID。