yum 源问题
1 RHEL本地iso设置为源
- 创建挂载点
[root@PC1 home]# mkdir -p /media/cdrom
- 进入/etc/yum.repos.d/目录,列出yum仓库配置文件:
[root@PC1 home]# cd /etc/yum.repos.d/
[root@PC1 yum.repos.d]# ls
redhat.repo
- 使用vim编辑器编辑redhat.repo文件,保存退出:
[root@PC1 yum.repos.d]# vim redhat.repo
[BaseOS]
name=BaseOS
baseurl=file:///media/cdrom/BaseOS
gpgcheck=0
enabled=1
[AppStream]
name=AppStream
baseurl=file:///media/cdrom/AppStream
gpgcheck=0
enabled=1
- 设置开启自动挂载
[root@PC1 yum.repos.d]# vim /etc/fstab ## 最后一行增加如下内容,保存退出
/dev/cdrom /media/cdrom iso9660 defaults 0 0
[root@PC1 yum.repos.d]# mount -a
2 RHEL/CentOS 设置epel
在RHEL/CentOS系统下yum安装软件时报错,这是由于RHEL/CentOS系统yum源中没有对应的安装包,这时我们只需要安装Epel即可解决。
EPEL (Extra Packages for Enterprise Linux,企业版Linux的额外软件包) 是Fedora小组维护的一个软件仓库项目,为RHEL/CentOS提供他们默认不提供的软件包。这个源兼容RHEL及像CentOS和Scientific Linux这样的衍生版本。
我们可以很容易地通过yum命令从EPEL源上获取上万个在CentOS自带源上没有的软件。EPEL提供的软件包大多基于其对应的Fedora软件包,不会与企业版Linux发行版本的软件发生冲突或替换其文件。
更多关于EPEL 项目的细节可以到以下网站获取:https://fedoraproject.org/wiki/EPEL
- 提示 - RHEL/CentOS系统有许多第三方源,比较流行的比如RpmForge,RpmFusion,EPEL,Remi等等。
- 然而需要引起注意的是,如果系统添加了多个第三方源,可能会因此产生冲突——一个软件包可以从多个源获取,一些源会替换系统的基础软件包,从而可能会产生意想不到的错误。已知的就有Rpmforge与EPEL会产生冲突。
- 对于这些问题我们建议,调整源的优先权或者有选择性的安装源,但是这需要复杂的操作,如果你不确定如何操作,我们推荐你只安装一个第三方源。
在文本中,我将展示在CentOS下如何安装EPEL源
要想安装EPEL,我们先要下载EPEL的rpm安装包。
根据你的RHEL/CentOS版本来选择正确的下载地址。
请注意EPEL 的安装包是独立编译的,所以它可以安装在32位和64位系统中。
- 确认你的RHEL/CentOS的版本
可以通过以下命令确认你的CentOS 版本
$ cat /etc/redhat-release
Red Hat Enterprise Linux release 9.1 (Plow)
- 下载EPEL 的rpm 安装包
现在从上面的地址下载RHEL/CentOS版本所对应的EPEL 的版本
$ wget https://mirrors.sonic.net/epel/epel-release-latest-9.noarch.rpm
- 安装EPEL
通过以下命令安装EPEL 软件包
$ sudo rpm -ivh epel-release-6-8.noarch.rpm
或
$ sudo rpm -ivh epel-release*
- 检查EPEL 源
安装好EPEL 源后,用yum 命令来检查是否添加到源列表
# yum repolist
正在更新 Subscription Management 软件仓库。
无法读取客户身份
本系统尚未在权利服务器中注册。可使用 subscription-manager 进行注册。
仓库 id 仓库名称
AppStream AppStream
BaseOS BaseOS
docker-ce-stable Docker CE Stable - x86_64
epel Extra Packages for Enterprise Linux 9 - x86_64
EPEL已经在repo 后列出,并且显示提供了上万个软件包,所以EPEL 已经安装到你的RHEL/CentOS了。
EPEL源的配置安装到了 /etc/yum.repos.d/epel.repo 文件。