目录
一班 32
一、资源共享
1.1 资源共享的含义
计算机网络中的资源包括软件、硬件及数据等。通常来说,可以被一个以上任务使用的资源叫做共享资源。现代网络中,资源共享是为了实现协同工作或为了共同爱好,而将自己资源通过一些平台共亨给其他人。网络中的共享资源一般包括:数据资源,如应用程序数据、文件等;硬件资源,如打印机、扫描仪等;软件资源,如应用程序等。
1.2 NFS服务
1.2.1 NFS服务简介
NFS最早是由Sun公司于1984年开发出来的,其目的就是让不同计算机之间可以彼此共享文件。NFS采用了客户机/服务器工作模式。
1.2.2 NFS工作相关流程
因为NFS服务有很多功能,提供不同功能的进程使用的端口号也就会各不相同,如果客户端想要请求NFS服务器的某项功能,势必需要先知道其功能的目的端口号,才能从NFS服务器哪里获得服务。那么NFS服务这么多功能端口号,客户端如何知道NFS服务器的某项功能使用的什么端口号呢?这就需要RPC远程过程调用协议来记录NFS服务器各功能所使用的端口号。其过程如下:
1.首先在服务端,NFS服务启动以后,就会随机的使用一些端口号,然后NFS服务就会将自己使用的端口号告诉本系统内的RPC服务,RPC记录下NFS各个功能所使用的端口。并开启RPC服务的111端口等待客户端通过RPC请求来获取到NFS服务所使用的端口号。
2.客户端启动自身的RPC(portmap)服务,向服务端的RPC(portmap)服务请求NFS文件共享服务开放的端口号。
3.服务端RPC服务收到用户的请求后,查阅NFS服务所使用的端口号,并将其使用的端口号告诉给客户端。
4.客户端知道NFS服务器使用的端口号后,就可以通过获取到的目的端口号与NFS服务器进行数据传输。
注意:在服务端上,因为NFS服务需要向RPC服务注册自己所使用的端口号,因此RPC只有先于NFS服务启动,NFS服务才能将自己使用的端口号注册到本地的RPC服务上。
二、安装NFS服务端
2.1 检查yum源
2.1.1 yum源是什么
yum(全称Yellow Dog Updater)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM 包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理包之间的依赖关系,并且一次安装所有依赖的软件包。
yum源可以分为2种:网络源和本地源。
网络源的好处是软件包更新较快,但是容易受网络带宽的影响。
本地源用的是已经下载好的软件包,不用受网络影响,但包更新可能不够及时。
2.2.2 yum源的作用
yum源是Linux系统中的软件管理仓库,可以完成安装、卸载、自动升级rpm软件包等任务。
yum源能够自动查找并解决rpm包之间的依赖关系,并一次安装所有依赖的相关软件包,无需管理员手动去安装每个rpm包。
yum源也能够在大量Linux服务器中,缓解软件安装、升级等对Internet的依赖。
yum源最大的好处就是自动解决依赖关系,联网装包非常方便,要注意的是在卸载时也会卸载的很干净,依赖的所有软件都会卸载。
$ yum repolist
2.2 使用yum命令安装NFS服务安装包
第一步:清除系统所有Yum的缓存和元数据
清除系统所有Yum的缓存和元数据可以帮助解决一些问题,如系统中的软件包可能会因为缓存和元数据的不一致而导致安装或更新出现问题。此外,清除缓存和元数据还可以释放磁盘空间,加快系统的运行速度。
$ yum clean all
第二步:创建 YUM 缓存
创建YUM缓存是为了提高软件包管理系统的性能和效率。当YUM缓存被创建后,系统会在本地存储库中保存软件包信息和元数据,下次需要查找或者安装软件包时就可以直接访问本地缓存,而不需要进行耗时和资源消耗的网络查询。
通过创建YUM缓存,系统可以快速地检索软件包信息,加快软件包的安装、更新和删除过程。此外,当安装一个软件时,YUM会自动安装所依赖的软件包,而创建缓存可以更快地确定依赖关系,提高了软件包管理的效率。
$ yum makecache
第三步:安装 NFS工具和服务的软件包。
$ yum install -y nfs-utils
2.3 NFS服务的启动
systemctl start nfs | 启动NFS服务 |
systemctl syop nfs | 停止nfs服务 |
systemctl restart nfs | 重新启动nfs服务 |
systemctl status nfs | 查看nfs服务状态 |
systemctl enable nfs | 设置开机自启动nfs服务 |
2.4 创建共享目录及文件
1、创建/nfs目录
$ mkdir /nfs
2、 在/nfs目录下创建测试文件123
$ touch /nfs/123
2.5 服务器:配置exports文件
这个命令用于编辑NFS服务器的exports配置文件。exports文件定义了NFS共享的目录以及访问权限等参数。通过编辑这个文件,可以添加、修改和删除NFS共享的目录。
$ vim /etc/exports
打开主配置文件发现是空的。在主配置文件/etc/exports中,你可以定义要分享哪些文件夹给哪些机器,并规定这些机器的访问权限。每一行代表一个共享文件夹的设置。
要修改/etc/exports文件,按照以下格式编辑保存: 在文件里加入:
/nfs 192.168.211.100/24(read-only) (客户端地址)
其中,/nfs是要共享的文件夹路径,192.168.211.100/24是网络地址,括号里的"read-only"表示只能以只读方式访问这个共享文件夹。
r
表示读权限w
表示写权限x
表示执行权限
当修改了/etc/exports文件的内容后,需要重启nfs服务使配置生效;如果没有重新启动NFS进程
$ systemctl restart nfs #重启nfs服务
也可以使用exportfs命令使新修改的配置文件生效并可通过选项査看NFS服务器实现目录共享的情况:
$ exportfs -rv
输出应该为:
exporting 192.168.211.0/24:/nfs 即配置成功
——服务器的配置就到这里,要记得及时快照。
三、NFS客户端
3.1 NFS服务客户端配置
关闭centos虚拟机,右击管理-克隆-完全克隆,将克隆下来的虚拟机作为NFS的客户机
第一步:修改客户机ip地址
$ vim /etc/sysconfig/network-scripts/ifcfg-ens33
进去里面将 ONBOOT
属性设置为 yes
,并将静态IP修改为 192.168.211.100
,另一个网卡直接注释掉。
- ONBOOT=no 意思是:系统在启动时不激活网卡
- ONBOOT=yes 意思是:系统在启动时激活网卡
修改之后wq保存退出。
第二步:重启网卡
$ systemctl restart network
——这一步是为了保障我们更改之后的ip能够更新。
第三步:重启后查看ip地址是否配置成功
$ ip a
3.2 客户端测试
在NFS服务器设置完成后,客户端可以使用showmount命令查询NFS服务器输出的共享目录,然后使用mount命令将所需的共享目录挂载到自己的文件系统中。
例如,显示NFS服务器(IP为192.168.211.10)的输出目录列表:
$ showmount -e 192.168.211.10 #自己的服务器地址
showmount命令是用于显示远程NFS服务器上共享的文件系统信息。它可以列出NFS服务器上的所有共享目录及其相关信息,如挂载的主机名和权限设置等。这个命令通常用于查看NFS服务器上共享的文件系统以及检查NFS挂载点的可用性。
补充说明:
showmount命令查询mountd守护进程,以显示NFS服务器加载的信息。
语法:
showmount [选项] [参数]
选项
-d:仅显示已被NFS客户端加载的目录;
-e:显示NFS服务器上所有的共享目录。
NFS服务器:指定NFS服务器的IP地址或主机名。
3.3 客户端挂载点配置
创建挂载点并将NFS服务器上的共享目录挂载到客户端:
$ mkdir /mnt/nfs #创建挂载点
$ mount 192.168.211.10:/nfs/mnt/nfs
3.4 下载效果测试
验证共享目录是否正常挂载:
$ ls /mnt/nfs/ #查看目标路径下的文件
$ cp /mnt/nfs/123 /root/ #可以将文件拷贝到根目录上
$ ls /root #可以在根目录上查询到该文件