栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

基于 CentOS8 or RHEL8 配置本地 YUM 源

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

基于 CentOS8 or RHEL8 配置本地 YUM 源

文章目录
  • 前言
  • 配置
  • 总结


前言

在很早之前我曾写过一篇名为《基于 CentOS 7.6 配置本地 YUM 源》的博客,文章里面详细的介绍了如何利用 ISO 镜像来配置本地 yum 源完成软件包的安装。

最近,我开始接触 CentOS8 和 RHEL8 版本的系统,突然发现按照原来在 CentOS7 版本中的配置,我的本地 yum 源是无法使用的,并且会出现如下错误:

按照 Couldn't open file /mnt/cdrom/repodata/repomd.xml 的错误提示,很显然问题就出在镜像上。这里说明下,我是把系统的 ISO 镜像给挂载到 /mnt/cdrom 目录下的,然后我就对比了 CentOS8 和 CentOS7 挂载之后区别,发现果然别有洞天:

根据上面的图不难发现,在 CentOS8 的环境里,镜像被挂载以后,挂载点的目录下压根儿就没有 repodata 目录,自然会报错;而在 CentOS7 的环境里,镜像被挂载以后,挂载点的目录下是有这个目录的。

这是因为 CentOS8 和 RHEL8 的镜像都提供了两个存储库,分别是 BaseOS 和 AppStream,当我们在修改本地 yum 源的配置文件时,只需要将 baseurl 的路径指定到 BaseOS 和 AppStream 子目录即可。

下面,我们就来具体说一下在 CentOS8 环境中该如何配置本地 yum 源,RHEL8 的操作与之一样。


配置

Step1:上传镜像并创建镜像挂载点。

[root@docker-learn ~]# mkdir /iso   //镜像存放目录。
[root@docker-learn ~]# mkdir /mnt/cdrom   //创建镜像挂载点。
[root@docker-learn ~]# ls -lh /iso/
total 8.7G
-rw-r--r--. 1 root root 8.7G May  6 17:26 CentOS-8.3.2011-x86_64-dvd1.iso

Step2:挂载镜像(如果需要永久挂载,将挂载条目写入 /etc/fstab 文件即可)。

[root@docker-learn ~]# mount -o loop /iso/CentOS-8.3.2011-x86_64-dvd1.iso /mnt/cdrom/

Step3:备份系统自带的 repo 配置文件。

[root@docker-learn ~]# mkdir /etc/yum.repos.d/repo-bak
[root@docker-learn ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo-bak/

Step4:配置本地 yum 源的 repo 文件。

[root@docker-learn ~]# vim /etc/yum.repos.d/local.repo   //配置信息如下所示。
[local-baseos]
name=local-baseos
baseurl=file:///mnt/cdrom/BaseOS
enabled=1
gpgcheck=0

[local-appstream]
name=local-appstream
baseurl=file:///mnt/cdrom/AppStream
enabled=1
gpgcheck=0

Step5:清除并重新缓存存储库的元数据。

[root@docker-learn ~]# yum clean all
[root@docker-learn ~]# yum makecache
[root@docker-learn ~]# yum repolist

至此,本地 yum 源就配置成功了,可以直接使用本地 yum 源进行软件包安装啦 ~~


总结

个人感觉 8 版本相对于 7 版本的体验还是有较大差异的。

单纯说 8 版本的镜像都要比 7 版本的大上两倍。像 8 之前版本里使用的 network.service 服务默认在 8 版本里面也不能直接使用了;其实,就拿本篇博客所说的 yum 工具,在 8 版本里面应该叫 dnf 工具(emmm,是不是要开两把地下城了 ~~)更为合适,我们可以看下 yum 的 man 手册,第一条就是:

yum - redirecting to DNF Command Reference

也就是说在 8 版本里面我们应该使用 dnf 命令,只是它兼容了原来的 yum 命令,举个例子看一下:

[root@docker-learn ~]# dnf search tigervnc --showduplicates
[root@docker-learn ~]# dnf install tigervnc

看起来似乎和之前的用法大差不差;不过我还是有一种被技术更新迭代迅猛所支配的恐惧感,得抓紧时间好好学习一啦。

以上,如有不妥之处,欢迎指正。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/882223.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号