您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# Linux如何配置NFS共享存储服务
## 一、NFS服务概述
NFS(Network File System)是由Sun公司开发的分布式文件系统协议,允许网络中的计算机之间通过TCP/IP网络共享资源。在Linux环境下配置NFS服务可以实现:
1. 多服务器共享同一存储空间
2. 集中化管理存储资源
3. 实现跨平台文件共享(支持Linux/Unix/Windows等)
4. 适用于Kubernetes持久化存储等场景
### NFS工作原理
- 服务端:导出(export)指定的目录
- 客户端:挂载(mount)远程目录到本地
- 通信协议:默认使用TCP 2049端口
## 二、服务端配置
### 1. 安装必要软件包
```bash
# Ubuntu/Debian
sudo apt update
sudo apt install nfs-kernel-server
# CentOS/RHEL
sudo yum install nfs-utils rpcbind
sudo mkdir -p /nfs_share
sudo chown nobody:nogroup /nfs_share # 修改所有权
sudo chmod 777 /nfs_share # 设置权限
编辑/etc/exports
文件:
sudo vim /etc/exports
添加以下内容(示例配置):
/nfs_share 192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash)
参数说明:
- rw
:读写权限
- sync
:同步写入
- no_subtree_check
:禁用子树检查
- no_root_squash
:允许root用户访问
# 使exports配置生效
sudo exportfs -a
# 启动服务
# Ubuntu/Debian
sudo systemctl start nfs-kernel-server
sudo systemctl enable nfs-kernel-server
# CentOS/RHEL
sudo systemctl start rpcbind nfs-server
sudo systemctl enable rpcbind nfs-server
# Ubuntu UFW
sudo ufw allow from 192.168.1.0/24 to any port nfs
# CentOS Firewalld
sudo firewall-cmd --permanent --add-service=nfs
sudo firewall-cmd --permanent --add-service=mountd
sudo firewall-cmd --permanent --add-service=rpc-bind
sudo firewall-cmd --reload
# Ubuntu/Debian
sudo apt install nfs-common
# CentOS/RHEL
sudo yum install nfs-utils
showmount -e <NFS服务器IP>
sudo mkdir -p /mnt/nfs_client
临时挂载(重启失效):
sudo mount -t nfs <NFS服务器IP>:/nfs_share /mnt/nfs_client
永久挂载(编辑/etc/fstab
):
<NFS服务器IP>:/nfs_share /mnt/nfs_client nfs defaults 0 0
然后执行:
sudo mount -a
df -hT | grep nfs
mount | grep nfs
编辑/etc/idmapd.conf
:
[General]
Domain = yourdomain.com
[Mapping]
Nobody-User = nobody
Nobody-Group = nogroup
客户端挂载时可添加:
mount -t nfs -o rw,hard,intr,rsize=8192,wsize=8192,timeo=14 <server>:/share /mnt
安装autofs:
sudo apt install autofs
配置/etc/auto.master
:
/mnt/nfs /etc/auto.nfs --timeout=60
创建/etc/auto.nfs
:
client -rw,soft,intr <NFS服务器IP>:/nfs_share
重启服务:
sudo systemctl restart autofs
/etc/exports
允许的网段中no_root_squash
设置/var/log/syslog
中的错误信息nolock
参数限制访问范围:
/nfs_share 192.168.1.100(rw) 192.168.1.101(ro)
使用Kerberos认证:
/secure_share *(sec=krb5p,rw)
定期检查日志:
tail -f /var/log/syslog | grep nfs
考虑使用NFSv4(更安全):
# 服务端/etc/default/nfs-kernel-server
RPCNFSDOPTS="--nfs-version 4"
通过以上步骤,我们完成了NFS共享存储服务的完整配置流程。实际生产环境中还需要注意:
NFS作为经典的网络文件系统,在集群计算、虚拟化存储、容器持久化等场景仍有广泛应用,掌握其配置方法对Linux系统管理员至关重要。 “`
注:实际使用时请根据您的具体环境(发行版版本、网络配置等)调整命令和参数。建议在测试环境验证后再部署到生产环境。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。