Centos7配置nfs服务实现共享文件
实验目的:将A服务器的文件,通过共享挂载到B服务器的目录下实现文件的同步存取
实验环境:A: Centos7.6.1810 B:Centos7.6.1810
1.在A,B服务器安装nfs
yum install nfs-utils
#安装此服务时会同时安装rpcbind
2. A服务器上
systemctl start nfs
systemctl enable nfs
systemctl start rpcbind
systemctl enable rpcbind
vi /etc/exports
#添加允许B服务器的共享访问
/data B-IP(rw,async)
systemctl restart nfs
#####配置详解#####
/data IP(option)
共享目录 地址(权限)
权限有:
1.访问权限:
rw:运行读写
ro:只读
2.用户映射权限
no_root_squash:与root_squash相反
root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置)
all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody);
anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx);
anongid=xxx:同上
3.其他选项
secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置);
insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;
async:将数据先保存在内存缓冲区中,必要时才写入磁盘;
wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置);
no_wdelay:若有写操作则立即执行,应与sync配合使用;
subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置)
no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;
3.B服务器上
systemctl start nfs
systemctl enable nfs
mkdir /data
mount -t nfs A-IP:/data /data
4.配置B开机自动挂载
chmod +x /etc/rc.d/rc.local
vi /etc/rc.d/rc.local
#添加如下内容
mount -t nfs A-IP:/data /data
5.查看挂载详情
df -Th