问题
在CentOS 8上安装软件时,遇到如下报错:
原因
网上搜索发现:在2022年1月31日,CentOS团队终于从官方镜像中移除CentOS 8的所有包。
CentOS 8已于2021年12月31日寿终正非,但软件包仍在官方镜像上保留了一段时间
解决办法
更换centos linux 8的yum源
1.切换到源目录,备份原来的源
2、下载新的源文件,并用命令yum makecache建立新的元数据缓存
下载源文件命令:
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
[root@localhost yum.repos.d]$wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
--2022-08-15 10:25:05-- https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
正在解析主机 mirrors.aliyun.com (mirrors.aliyun.com)... 113.141.190.101, 113.141.190.100, 113.141.190.103, ...
正在连接 mirrors.aliyun.com (mirrors.aliyun.com)|113.141.190.101|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:2495 (2.4K) [application/octet-stream]
正在保存至: “/etc/yum.repos.d/CentOS-Base.repo”
/etc/yum.repos.d/Ce 100%[===================>] 2.44K --.-KB/s 用时 0s
2022-08-15 10:25:06 (7.56 MB/s) - 已保存 “/etc/yum.repos.d/CentOS-Base.repo” [2495/2495])
[root@localhost yum.repos.d]$ ls
bak CentOS-Base.repo mysql-community.repo
[root@localhost yum.repos.d]$ vim CentOs-Base.repo
[root@localhost yum.repos.d]$ yum makecache
CentOS-8.5.2111 - Base - mirrors.aliyun.com 529 kB/s | 4.6 MB 00:08
CentOS-8.5.2111 - Extras - mirrors.aliyun.com 63 kB/s | 10 kB 00:00
CentOS-8.5.2111 - AppStream - mirrors.aliyun.co 596 kB/s | 8.4 MB 00:14
MySQL 5.7 Community Server 259 kB/s | 2.7 MB 00:10
MySQL Connectors Community 22 kB/s | 51 kB 00:02
MySQL Tools Community 122 kB/s | 711 kB 00:05
元数据缓存已建立。
3.测试源(用yum命令装个软件试试)
扩展知识
1.什么是yum源?yum的工作原理?
说到yum源就必须说到linux系统中特有的依赖关系问题,yum就是为了解决依赖关系而存在的。yum源就相当是一个目录项,当我们使用yum机制安装软件时,若需要安装依赖软件,则yum机制就会根据在yum源中定义好的路径查找依赖软件,并将依赖软件安装好。
YUM是“Yellow dog Updater, Modified”的缩写,是一个软件包管理器,YUM从指定的地方(相关网站的rpm包地址或本地的rpm路径)自动下载RPM包并且安装,能够很好的解决依赖关系问题。
YUM的基本工作机制如下:
服务器端:在服务器上面存放了所有的RPM软件包,然后以相关的功能去分析每个RPM文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内。
客户端:如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文件(可通过WWW或FTP方式),通过对服务器端下载的纪录数据进行分析,然后取得所有相关的软件,一次全部下载下来进行安装。
2.DNF是什么
DNF代表Dandified YUM是基于RPM的Linux发行版的软件包管理器。它用于在Fedora / RHEL / CentOS操作系统中安装,更新和删除软件包。 它是Fedora 22,CentOS8和RHEL8的默认软件包管理器。 DNF是YUM的下一代版本,并打算在基于RPM的系统中替代YUM。 DNF功能强大且具有健壮的特征。DNF使维护软件包组变得容易,并且能够自动解决依赖性问题。