Linux系统之nfs文件共享
一、什么是NFS
NFS是Network File System的缩写,即网络文件系统。简单的说 ,一台服务器提供NFS服务(共享目录),客户机可以将服务
器上的共享目录挂载到本机,从而实现共享信息。
二、NFS的部署
安装:yum install nfs-utils -y
启动:systemctl start nfs
设置防火墙:可以将防火墙关掉,也可以打开firewall-cmd的端口
同时也要打开mount 和rpc-bind服务,便于客户机挂载
三、NFS的配置
编辑配置文件/etc/exports。配置文件的结构分为三部分,即本地要共享出去的目录(如share目录)、允许访问的主机和由
该主机登陆NFS服务器的用户的权限设置。
/westos/nfs是本地共享出去的目录(可自己建立)
sync:同步模式,存入数据时写入磁盘,即数据同步。
exportfs -rv:刷新配置文件,相当于其他服务的restart
客户机发现:
showmount -e 172.25.254.221
客户机挂载:
mount 172.25.254.221:/westos/nfs /mnt
NFS文件系统也可以在客户主机设置为开机自动挂载
四、autofs工具实现nfs文件系统自动挂载和卸载
自动挂载和自动卸载指的是当客户端需要访问共享文件的内容时系统就自动挂载上,不需要访问时就自动卸载掉,autofs不需要
我们手动的进行这些操作,更加方便。
安装:yum install autofs.x86_64 -y
启动服务后,便可以在/net目录下访问网络中的共享文件
如图,172.25.254.221目录是隐藏的,只有处于同一网络的共享文件才能被访问到。
进入该目录,该共享文件自动挂载:
编辑配置文件:vim /etc/sysconfig/autofs
配置文件中的TIMEOUT=3表示在退出该共享目录(即停止使用)3秒后该共享目录自动卸载
五、nfs共享文件的权限
在设置权限前先将共享目录本身权限设定为777,否则系统本身会对其他有权限限制
在配置文件/etc/exports里可以设定该共享文件的权限
*:表示所有用户;
rw:表示读写权限,即不仅能访问也能建立、删除数据
ro:表示只读权限,即只能访问,不能对数据产生动作
anonuid:表示在该共享目录中建立的数据所有人转换为uid是1001的用户;
anongid:表示在该共享目录中建立的数据所有组转换为gid是1001的组;
注意:如果客户主机中没有uid为1001的用户和gid为1001的组时,所有人及所有组显示数字!!!
no_root_squash:表示建立数据时不进行所有组及所有人的转换!!!
表示只有IP为172.25.254.121的主机对该共享目录由读写权限,其他主机对该共享目录只有只读权限!!
如上图:172.25.254.123不能在该共享目录中进行写文件!!!
六、NFS的自定义挂载点的设置
在上面的操作中,NFS共享文件的挂载点都是系统默认的挂载点,该挂载点还可以进行自定义设置
在autofs服务的子配置文件中/etc/auto.master设置
如图所示,最终挂载点为/westos/linux(该目录不需要自行建立),/etc/auto.nfs文件描述了挂载动作,需要自己建立
rw:表示读写权限
重启服务后即可生效
上图表示该目录已经被自动挂载了!!