在Linux系统中安装和配置NFS(Network File System)可实现跨网络共享文件资源,以下是基于Ubuntu/CentOS的详细安装指南,所有命令均需root权限执行(使用sudo -i
或sudo su
切换)。
NFS服务端安装与配置
步骤1:安装NFS服务端
# CentOS/RHEL yum install nfs-utils rpcbind -y
步骤2:创建共享目录并设置权限
mkdir /nfs_share chown nobody:nogroup /nfs_share # Ubuntu # 或 chown nfsnobody:nfsnobody /nfs_share # CentOS chmod 777 /nfs_share
步骤3:配置共享规则
编辑配置文件:
vim /etc/exports ```按需调整): ```conf /nfs_share 192.168.1.0/24(rw,sync,no_subtree_check) # 允许192.168.1.*网段读写 # 参数说明: # rw: 读写权限 # sync: 实时同步写入 # no_root_squash: 允许root用户访问(慎用)
步骤4:启动服务并应用配置
# 导出共享配置 exportfs -a # 启动服务 systemctl start rpcbind nfs-server # Ubuntu systemctl start rpcbind nfs # CentOS systemctl enable rpcbind nfs-server # 设置开机自启
步骤5:验证共享状态
showmount -e localhost # 应显示:/nfs_share 192.168.1.0/24
NFS客户端安装与挂载
步骤1:安装客户端工具
# CentOS/RHEL yum install nfs-utils -y
步骤2:创建本地挂载点
mkdir /mnt/nfs_client
步骤3:挂载NFS共享
mount -t nfs 服务端IP:/nfs_share /mnt/nfs_client # 示例:mount -t nfs 192.168.1.100:/nfs_share /mnt/nfs_client
步骤4:验证挂载结果
df -hT | grep nfs # 查看挂载信息 touch /mnt/nfs_client/test.txt # 测试写入
步骤5:设置开机自动挂载
编辑/etc/fstab
:
服务端IP:/nfs_share /mnt/nfs_client nfs defaults 0 0
防火墙配置(服务端)
# Ubuntu UFW ufw allow from 192.168.1.0/24 to any port nfs # CentOS Firewalld firewall-cmd --permanent --add-service={nfs,rpc-bind,mountd} firewall-cmd --reload
故障排查
-
连接失败
- 检查服务端NFS状态:
systemctl status nfs-server
- 确认防火墙放行:
rpcinfo -p 服务端IP
- 检查服务端NFS状态:
-
权限拒绝
- 检查
/etc/exports
中的IP范围和权限参数 - 确保共享目录权限:
ls -ld /nfs_share
- 检查
-
卸载挂载点
umount -l /mnt/nfs_client # 强制卸载
安全建议
- 限制共享范围:避免使用开放全网段
- 使用
ro
(只读)权限替代rw
(读写) - 结合Kerberos启用NFSv4加密(企业环境推荐)
引用说明参考Linux官方文档(kernel.org/docs)及NFS最佳实践指南,配置前请确保理解命令含义,生产环境建议备份关键数据。
最后更新:2025年10月
适用系统:Ubuntu 20.04+ / CentOS 7+
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6596.html