所有机器都安装 nfs-utils。只安装 nfs-utils 即可,rpcbind 属于它的依赖,也会安装上。
sudo yum install nfs-utils
服务端配置
设置服务开机自启
sudo systemctl enable rpcbind
sudo systemctl enable nfs
启动 NFS 服务
sudo systemctl start rpcbind
sudo systemctl start nfs
配置共享目录
服务启动后,配置一个共享目录,这里使用的是 /data 目录作为共享目录
sudo mkdir /data
sudo chmod 755 /data
在 /etc/exports 文件中添加配置。
/data/ 192.168.0.0/24(rw,sync,no_root_squash,no_all_squash)
- /data: 共享目录位置。
- 192.168.0.0/24: 客户端 IP 范围,* 代表所有,即没有限制。
- rw: 权限设置,可读可写。
- sync: 同步共享目录。
- no_root_squash: 可以使用 root 授权。
- no_all_squash: 可以使用普通用户授权。
重启 NFS
sudo systemctl restart nfs
检查本地目录
showmount -e localhost
-- 输出
Export list for localhost:
/data 192.168.0.130/24
Linux 客户端
设置 rpcbind 服务开机自启
sudo systemctl enable rpcbind
启动 NFS 服务
sudo systemctl start rpcbind
查看服务端共享目录
showmount -e 192.168.0.130
-- 输出
Export list for 192.168.0.130:
/data 192.168.0.130/24
挂载
在客户端创建目录
sudo mkdir /data
挂载
sudo mount -t nfs 192.168.0.130:/data /data
测试
在随意一台机器上 /data 添加目录或者文件,在另一台机器上 /data 里查看
客户端自动挂载
编辑客户端文件 /etc/fstab
在最后一行添加
192.168.0.130:/data /data nfs defaults 0 0
由于修改了 /etc/fstab,需要重新加载 systemctl
sudo systemctl daemon-reload
k8s-volums:/data/k8s /data/k8s nfs defaults 0 0
