内容预知
第二步:服务端在/var/ftp/ 下创建一个文件,并且挂载
第一步:将我们创建的local.repo文件移动到repo.bak目录下(也可以是别的备份目录)
第三步:刷新缓存, yum claen all && yum makecache #清理缓存并且生成新的缓存
第一步:NFS服务器安装 nfs-utils、rpcbind 软件包
第四步:服务端进行rpcbind服务启动,再进行nfs服务启动
第八步 :强制卸载nfs服务(服务端掉线时,客户端再写入会卡死)
1.YUM仓库源的介绍和相关信息
yum,全称“Yellow dog Updater, Modified”,是一个专门为了解决包的依赖关系而存在的软件包管理器。类似于windows系统的中电脑软件关键,可以一键下载,一键安装和卸载。yum 是改进型的 RPM 软件管理器,它很好的解决了 RPM 所面临的软件包依赖问题。yum 在服务器端存有所有的 RPM 包,并将各个包之间的依赖关系记录在文件中,当管理员使用 yum 安装 RPM 包时,yum 会先从服务器端下载包的依赖性文件,通过分析此文件从服务器端一次性下载所有相关的 RPM 包并进行安装。

centos7和rhel 7 默认使用的时 yum仓库源 ,软件包的结尾是".rpm"
centos8 和 rhel 8 可以使用 dhf (是yum的衍生产品)
Ubuntu debian 使用的是 apt 软件包是以“.deb”结尾
| yum list | 显示所有可用包(可以后跟包名,显示具体的软件包) |
| yum info | 显示所有可用包的信息(后跟包名,显示单个包的相关信息) |
| yum search | 模糊查找所有的相关信息 |
| yum whatprovides | 精确查找 |
| yum install | 安装具体软件包 |
| yum update | 具体软件升级 |
| yum upgrade | 具体软件更新 |
| yum remove | 卸载具体软件 |
| yum history | 查看当前yum操作历史 |
| yum history info | 加序号列出某次事务的详细信息 |
| yum history undo | 加序号卸载序号里安装的软件(比yum remove 软件名,清除的更加彻底) |
| yum history redo | 加序号重新执行序号里的操作 |
| yum grouplist | 显示所有可用包组(后跟包组名,可以显示具体) |
| yum groupinfo | 显示具体的包组的具体信息 |
| yum groupinstall | 安装具体软件包组 |
| yum group update | 具体包组升级 |
| yum groupremove | 卸载具体包组软件 |
方式一: yum install --downloadonly mariadb #下载下来的安装包都是放在 /var/cache/yum/x86_64/7/ 目录下
方式二: yumdownloader --destdir=/opt mariadb mariadb-server #yumdownloader 仅下载指定软件包,参数 --destdir 是用来指定存放下载的安装包的目录
方式三:
yum的缓存功能:默认情况下,yum会在安装完软件之后,自动清理掉安装包。但是也可以通过设置,让yum不清楚安装后的安装包。
vim /etc/yum.conf 将配置中的 keepcache=o 修改为 keepcache=1
此时下载好的软件包默认安置在: /var/cache/yum
/var/log/yum.log

2.yum 仓库源的三种搭建
yum install -y httpd


vim local.repo

yumdownloader --destdir=/opt mariadb mariadb-server


准备两台虚拟机,一台用作服务端,提供下载库,一台作为客户端,建立yum仓库获取下载库的资源
yum install -y vsftpd

解释:该步骤涉及到ftp原理,用户远程访问时的,根目录就在 /var/ftp 上,所以在此创建挂载目录
- root@localhost ~]# cd /var/ftp
- [root@localhost ftp]# mkdir centos7
- [root@localhost ftp]# mount /dev/sr0 /var/ftp/centos7/

- [root@localhost ~]# cd /etc/yum.repos.d
- [root@localhost yum.repos.d]# mkdir repo.bak
- [root@localhost yum.repos.d]# mv *.repo ./repo.bak/
- [root@localhost yum.repos.d]# vim local.repo

服务端要关闭防火墙和selinux,启动服务端的vsftpd服务
- [root@localhost ftp]# systemctl restart vsftpd
- [root@localhost ftp]# systemctl stop firewalld
- s[root@localhost ftp]# setenforce 0

客户端要关闭防火墙和selinux

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

1.查看是否安装了yum-plugin优先级插件
rpm -qa |grep yum-plugin-

2.如果没有安装,就安装插件
yum -y install yum-plugin-priorities.noarch

3.查看插件是否启用
cat /etc/yum/pluginconf.d/priorities.conf


yum install -y mysql

3.NFS共享服务的介绍和相关知识
NFS(Network File System 网络文件服务),是一种基于 TCP/IP 传输的网络文件系统协议,最初由 Sun 公司开发。
NFS 服务的实现依赖于 RPC(Remote Process Call,远端过程调用)机制,通过使用 NFS 协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。(远端过程调用:自己没有这种功能,调用别人的功能) NFS 也是 NAS 存储 设备必然支持的一种协议,以完成远程到本地的映射过程。

在 CentOS 7 系统中,需要安装 nfs-utils、rpcbind 软件包来提供 NFS 共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持。手动加载 NFS 共享服务时,应该先启动 rpcbind,再启动 nfs。
软件包 (包括服务器端和客户端):
检查软件包的下载:rpm -q rpcbind nfs-utils
软件包下载:yum install -y nfs-utils rpcbind
NFS 的配置文件为/etc/exports
格式为: 共享的目录位置 客户机地址(权限选项)
| 客户机地址 | 可以是主机名、IP 地址、网段地址,允许使用“*”、“?”通配符。 |
| “rw” | 表示允许读写,“ro” 表示为只读。 |
| sync | 表示同步写入到内存与硬盘中。 |
| no_root_squash | 表示当客户机以root身份访问时赋予本地root权限(默认是root_squash)。 |
| root_squash | 表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户。 |
| all_squash | 所有访问用户都映射为匿名用户或用户组 |
| async | 将数据先保存在内存缓冲区中,必要时才写入磁盘。 |
| subtree_check(默认) | 若输出目录是一个子目录,则nfs服务器将检查其父目录的权限。 |
| no_subtree_check | 即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率。 |
4.NFS的运用演练

- [root@localhost opt]# mkdir -p /opt/nfstest
- [root@localhost opt]# chmod 777 /opt/nfstest

- vim /etc/exports
-
-
- /opt/nfstest 192.168.73.0/24(rw,sync,no_root_squash)

- systemctl start rpcbind
- systemctl start nfs
- systemctl enable rpcbind
- systemctl enable nfs

查看本机发布的共享服务
showmount -e (后面可以跟指定的IP)


客户端查看服务端发布的共享服务(客户端和服务端实验前都需要关闭防火墙和seLinux)

- mkdir /myshare
- mount 192.168.73.111:/opt/nfstest /myshare


保存退出后,进行 mount -a 进行挂载刷新


- umount 命令是无法直接卸载的,需要加上 -lf 选项才能卸载。
- umount -lf /myshare
总结
1. 学会部署三种yum仓库的方式,可以进行不同场景的运用
2. 本地yum源和在线源可以安装在同一个repo文件中,设置好优先级,就可以正常使用
3.nfs是一种适合在局域网的共享目录服务,不适合跨网段使用(会存在极大的安全隐患)