1.服务端(192.168.1.126)
只有一台机器
1.1.软件安装
安装命令: yum -y install nfs-utils rpcbind
验证:
rpm -qa | grep nfs
rpm -qa | grep rpcbind
1.2 启动服务
service rpcbind start
service nfs start
注:一定要先启动rpcbind(nfs需要向rpc注册,其重启后,其他服务需要重新向其注册)
1.3 设置开机启动
chkconfig rpcbind on
chkconfig nfs on
验证:
chkconfig --list rpcbind
chkconfig --list nfs
2. 客户端(192.168.1.127,192.168.1.128,192.168.1.130)
可以存在多台机器:每个客户端都需要操作一次
操作同服务端一样
3. 服务端配置共享目录
3.1 在服务端设置共享目录 /opt/nfs_share
vim /etc/exports
/opt/nfs_share *(rw,sync,no_root_squash)
3.2 服务端重启服务
在服务器端重启rpcbind 和nfs 服务(注意要先重启rpcbind ,后重启nfs)
service rpcbind restart
service nfs restart
4. 客户端操作
每台都操作一遍
4.1 验证是否可用发现服务端的共享目录
客户端验证: showmount -e 192.168.1.126
4.2 在客户端把服务器端共享目录挂载到本地目录
4.2.1 创建本地目录
mkdir /opt/nfs_share
4.2.2 挂载服务端共享目录
mount -t nfs 192.168.1.126:/opt/nfs_share /opt/nfs_share
验证:mount
4.2.3 设置开机自动挂载
vim /etc/fstab
新增一行:
192.168.1.126:/opt/nfs_share /opt/nfs_share nfs defaults 1 1
5. 权限匹配设置
1) 若在服务端修改共享文件夹属主:chown -R hadoop:hadoop /opt/nfs_share,
为了让NFS客户端挂载文件夹后有相同的权限,需要保持客户端上用户的uid,gid与服务端共享文件夹属主的uid&gid一致,可以通过usermod -u new_id username 和 groupmod -g new_id groupname 调整id号
---> 否则可能出现客户端相同用户无权访问或操作共享文件夹的情况
2) 也可以直接禁用,简单粗暴
在服务端,新建文件/etc/modprobe.d/nfs.conf,加入让NFS模块去禁用idmapd服务的选项
echo "options nfsnfs4_disable_idmapping=1" > /etc/modprobe.d/nfs.conf
在服务端,停止idmapd服务
service rpcidmapd stop
6. 测试
服务端在共享目录生成一个测试文件
客户端查看
--->测试通过,NFS搭建成功