NFS(Network File System)网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。 在NFS的应用中,本地NFS的客户端应用可以透明的读写位于远端的NFS服务器上的文件,就像访问本地文件一样。NFS主要用于Linux与linux之间进行文件系统共享。
简单说,就是可以通过网络,让不同的主机,不同操作系统可以共享存储。
NFS允许不同的客户端及服务端通过一组RPC(Remote Procedure Call远程过程调用)分享相同的文件系统,它是独立于操作系统,允许不同硬件和操作系统的系统共同进行文件的共享。
服务器端 (Rhel7.3 ip: 172.25.254.200) 客户端 (Rhel7.3 ip: 172.25.254.100)
1.服务器端安装相应的软件包: yum -y install nfs-utils 2.服务器端关闭SElinux和防火墙:setenforce 0 ; systemctl stop firewalld 3.创建共享目录(也可以不创建,直接共享现存的目录),并且赋予权限:
mkdir /data chmod 777 /data4.修改共享配置文件 /etc/exports ,然后重新加载exports文件:exportfs -rv 5.启动 rpcbind服务和nfs服务: systemctl start nfs-server 6.客户端关闭Selinux和防火墙:setenforce 0 ; systemctl stop firewalld 7.客户端安装nfs-utils,并且启动: yum -y install nfs-utils 8.创建挂载点/test,查看,并且挂载:mkdir /test ; showmount -e 172.25.254.200; mount -t nfs 172.25.254.200:/data /test
yum install nfs-utils -y yum start nfs-server 之后不要在作重启操作 vim /etc/exports /data 172.25.254.0/24(ro,sync) 或者 /westos *(sync,rw) 172.25.254.23(ro,sync) 让指定的IP只能是可读的状态 或者 /data 172.25.254.0/24(ro,async) 把/data 以只读的方式 共享给 某个网段的主机;使用async速度快,安全性较差 exportfs -rv 修改完配置文件只需要刷新,不需要重启nfs-server服务 systemctl stop firewalld
yum install nfs-utils -y
showmount -e 172.25.254.140 查看172.25.254.140共享出来的文件 mount 172.25.254.140:/data /mnt 挂载 mount 查看挂载方式
vim /etc/exports /data 172.25.254.0/24(rw,async)客户端创建的文件所有人为nfsnobody /data 172.25.254.0/24(rw,async,anonuid=1001,anongid=1001)客户端创建的文件所有人为服务端和客户端id=1001对应的用户 /data 172.25.254.0/24(rw,async,anonuid=1001,anongid=1001,no_root_squash) 客户端创建的文件所有人为客户端本地用户自身,谁创建就是谁 /data 172.25.254.0/24(rw,async,anonuid=1001,anongid=1001,no_root_squash,all_squash) all_squash 默认参数 all_squash出现时,前面的no_root_squash失效。文件所有人为id=1001的用户。 exportfs -rv 刷新,使配置生效
可以看到,当nfs服务端设置为 no_root_squash, 客户端本地用户谁创建的文件,所有者所有组就是谁。
自动挂载器是一个监视目录的守护进程,并在目标子目录被引用时,自动执行预定义的挂载,自动挂载器由autofs服务脚本管理。
yum install autofs -y systemctl start autofs 只有服务开启时,/net目录才会存在 systemctl enable autofs rpm -qc autofs 查看配置文件路径,软件版本不同,配置文件路径不同 vim /etc/autofs.conf timeout = 3 退出使用,三秒后自动卸载
ls /net 没有任何文件 ls /net/172.25.254.200/data df 查看挂载情况,用的时候自动挂载 cd …/ 退出/mnt/westos df 三秒后查看,发现已自动卸载
创建最终挂载点 haha, 进入最终挂载目录haha,自动挂载;
退出 haha目录,三秒后自动卸载;
vim /etc/auto.nfs