前面有一期的内容我们讲到如何配置"cron计划任务",不知道各位小伙伴还有没有印象,在那一期内容中,我们使用“crond”这个服务,使得我们的Linux主机能够通过服务器去同步时间。那么我们有没有想过,存不存在一种服务,使得我们的本地主机可以访问远程Linux系统上的共享资源呢?
答案是肯定的的,如果需要共享文件的主机都是Linux系统,此时我们便可以在客户端部署NFS服务来共享文件,因为NFS服务可以将远程Linux系统上的文件资源挂载在本地主机的目录上,从而使得本地主机基于TCP/IP协议,去访问远程Linux系统上的资源!下面我们一起通过实验来感受一下NFS的魅力吧!
第一步:首先我们需要两台Linux主机(一台是服务端,一台是客户端),并按照表格设置地址。
主机名称 | 操作系统 | IP地址 |
server1.net0.example.com | RHEL8 | 172.25.0.254 |
blue.net0.example.com | RHEL8 | 172.25.0.26 |
第二步:配置好防火墙,以免默认的防火墙策略禁止正常的NFS共享服务。两台主机都配置即可。
第三步:在NFS服务器上搭建用于NFS文件共享的目录,并设置足够的权限确保其他人也有写入权限。
第四步:NFS服务程序的配置文件为etc/exports,默认情况下是没有任何内容的。我们按照“共享目录的路径 允许访问的NFS客户端(共享权限参数)”的格式,定义要共享的目录与权限。例如现在我们把/nfsfile目录共享给172.25.0.26这台主机,让这台主机都拥有读写权限,那要如何设置呢?
NFS服务器的/etc/exports文件,并在里面按照“共享目录的路径 允许访问的NFS客户端(共享权限参数)”的格式编写,注意客户端ip与权限间是没有空格的!!!
第五步:启动和启用NFS服务,同时这里注意在启用NFS服务之前,需要先使用RPC(Remote procedure call,远程过程调用)将NFS服务端的ip以及端口号发送给客户端。因此要同时启用rpcbind服务程序,并将这两个服务一起加入开机启动项中。注意这里是在NFS服务器上。
第六步:接下来我们需要在NFS客户端进行配置,使用showmount命令查询NFS服务器的远程共享信息,格式为“共享的目录名称 允许使用客户端地址”。
参数 | 作用 |
-e | 显示NFS服务器的共享列表 |
-a | 显示本机挂载的文件资源的情况nfs资源情况 |
-v | 显示版本号 |
第七步:在NFS客户端下创建一个挂载目录。格式“mount -t nfs 服务端ip:共享目录 挂载到客户端的目录”。
第九步:挂载成功后,就可以看到服务端共享的内容了,如果你希望NFS文件一直有效,记得写入/etc/fstab中进行永久挂载。