NFS Server搭建
服务器端
以下在192.168.211.199上执行
1. 安装nfs-utils
yum -y install nfs-utils
安装过程如图(部分)
centos7自带了rpcbind,所以不用安装rpc服务,rpc监听在111端口,可以使用
ss -tnulp | grep 111
查看rpc服务是否自动启动,如果没有启动,就systemctl start rpcbind 启动rpc服务。rpc在nfs服务器搭建过程中至关重要,因为rpc能够获得nfs服务器端的端口号等信息,nfs服务器端通过rpc获得这些信息后才能连接nfs服务器端。
2. 查看是否安装成功
rpm -qa nfs-utils
以下为安装成功
3. 编辑/etc/exports
添加以下内容
/data 192.168.1.0/24(rw,async)
4. 启动nfs服务
systemctl start nfs
启动后 使用rpcinfo -p 192.168.211.199 查看,如图
5. 显示NFS服务器的挂载信息
使用showmount -e localhost
6. 创建/home/nfs-data目录添加文件,更改权限(很重要!!!!!)
mkdir /home/nfs-data
touch /home/nfs-data/test.txt
echo "hello" >> /home/nfs-data/test.txt
chown -R nfsnobody.nfsnobody /home/nfs-data/
客户端
以下在192.168.211.100/101/102/103上执行
1. 安装nfs-utils
yum -y install nfs-utils
客户端上不需要启动nfs服务,只是为了使用showmount工具
2. 查看是否安装成功
rpm -qa nfs-utils
以下为安装成功
3. 显示NFS服务器的挂载信息
使用showmount -e 192.168.211.199查看
如果出现以上错误,通常是因为服务器的防火墙问题
最简单粗暴的方法是关闭防火墙
回到服务器199上执行以下命令
同时关闭防火墙开机启动
另一种方法是,配iptable,此处不详述
4. 挂载至本地/data目录
mount -t nfs 192.168.211.199:/home/nfs-data /data
执行mount时,共遇到两种类型的错
- mount.nfs: access denied by server while mounting 192.168.211.199:/home/nfs-data
经过排查发现,是nfs服务器端/etc/exports文件中配置允许访问的ip配置写错,写成了/data 192.168.1.0(rw,async)
- mount.nfs: requested NFS version or transport protocol is not supported
检查半天没看到什么错误,版本也没有问题,都是nfs-utils 1.3的,后来199和100都重启,就好了
5. 设置开机nfs挂载
编辑/etc/fstab,开机自动挂载
vim /etc/fstab
如图下图