Redhat系列yum源介绍
CentOS默认自带CentOS-Base.repo源,但官方源中去除了很多有版权争议的软件,而且安装的软件也不是最新的稳定版。 Fedora自带的源中也找不到很多多媒体软件,如果需要安装,必需先添加其他源,如RPMFusion和RPMForge等第三方软件库。
下面鹏叔来一一介绍各种第三方软件库,以下软件库适用于与RHEL完全兼容的linux发行版
1. EPEL源
EPEL,即Extra Packages for Enterprise Linux,是由 Fedora 社区创建维护,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。EPEL中含有大量的软件,对官方标准源是一个很好的补充。
wiki: https://docs.fedoraproject.org/en-US/epel/
Fedora EPEL 下载:https://admin.fedoraproject.org/mirrormanager/
1.1. 安装EPEL源
针对各种不同的版本安装EPEL源:
EL9
CentOS Stream 9
1 |
|
RHEL 9
1 |
|
AlmaLinux 9, Rocky Linux 9
1 |
|
EL8
CentOS Stream 8
1 | dnf config-manager --set-enabled powertools |
RHEL 8
1 |
|
AlmaLinux 8, Rocky Linux 8
1 | dnf config-manager --set-enabled powertools |
EL7
RHEL 7
1 | subscription-manager repos --enable rhel-*-optional-rpms \ |
CentOS 7
1 |
|
2. REMI源
REMI yum源是一个包含最新版本PHP和MySQL包的Linux软件源,由Remi提供维护。使用这个源可以方便地通过YUM安装或更新PHP、MySQL、phpMyAdmin等服务器相关程序,是Linux系统管理员和开发者常用的yum仓库之一。
Remi下载地址:https://rpms.remirepo.net/
2.1. 安装REMI源
最简单的方法是安装remi release包,该包提供YUM/DNF的存储库配置和用于签署RPM的GPG密钥。
Enterprise Linux 9 - x86_64
1 |
|
Enterprise Linux 8 - x86_64
1 |
|
Enterprise Linux 7 (with EPEL) x86_64
1 |
|
for RHEL only
1 | subscription-manager repos --enable=rhel-7-server-optional-rpms |
Fedora 39 x86_64
1 | dnf install https://rpms.remirepo.net/fedora/remi-release-39.rpm |
Fedora 38 x86_64
1 | dnf install https://rpms.remirepo.net/fedora/remi-release-38.rpm |
Fedora 37 x86_64
1 | dnf install https://rpms.remirepo.net/fedora/remi-release-37.rpm |
2.2. REMI源与其他yum源的兼容性
虽然 REMI repo 提供了许多有用的软件包,但与其他 repo 的兼容性可能需要额外的注意和管理。通过仔细规划和管理您的软件包安装和更新过程,您可以最大限度地减少潜在的问题。
在Fedora上,REMI上可用的RPM主要使用来自fedora 和 updates yum源,有时来自Rpmfusion yum源。
在RHEL和CentOS上,依赖项位于main和EPEL yum源。不建议使用Rpmforge yum源(众所周知与EPEL的冲突)。
在RHEL-6上,必须启用RHEL服务器可选通道。
2.3. 安装REMI签名
如果使用包管理器(Yum或dnf),则不需要执行此步骤。YUM/DNF将建议您在首次安装存储库RPM时自动安装它。
RPM有效性检查要求在使用之前将密钥导入您的系统。下载GPG密钥、GPG密钥2017、GPG钥匙2018、GPG关键字2019、GPG密码2020、GPG密匙2021、GPG加密匙2022、GPG破解匙2023、GPG解密匙2024,并使用以下软件安装所需软件:
1 |
|
3. RPM Fusion源
RPMFusion是一个为Fedora、Red Hat Enterprise Linux (RHEL)及其衍生版本(如CentOS和Scientific Linux)提供额外软件包的软件仓库,它包含了许多在默认仓库中不可用的开源软件,如音频和视频编解码器、图形软件等。。这个仓库包含了官方发行版中不可用的许多开源软件包,旨在扩展这些Linux发行版的功能。
RPMFusion有两个主要的子仓库:free和non-free。
RPMFusion Free:这个子仓库包含了遵循自由软件许可证(如GPL)的软件包。这些软件包是开源的,用户可以自由使用、修改和重新分发。RPMFusion Free仓库提供了广泛的软件选择,包括音频和视频编解码器、图形软件、科学计算工具等。
RPMFusion Non-Free:这个子仓库包含了不遵循自由软件许可证的软件包,可能包括专有软件或受专利保护的编解码器。这些软件包通常不是开源的,但仍然非常有用,特别是对于那些需要特定功能(如商业软件的插件或驱动程序)的用户。
需要注意的是,由于RPMFusion提供了官方仓库之外的软件包,这些软件包可能没有经过与官方发行版相同的测试和验证过程。因此,在安装和使用RPMFusion中的软件包时,用户需要谨慎并确保它们与系统的其他组件兼容。此外,RPMFusion仓库中的软件包可能不会受到官方发行版的支持和维护,因此在遇到问题时,用户可能需要依赖社区或软件包维护者提供的帮助。
RPMFusion是一个非常有价值的资源,它扩展了Fedora、RHEL及其衍生版本的功能,使用户能够轻松安装和使用许多额外的开源和专有软件包。然而,在使用RPMFusion源时,用户需要了解其提供的软件包的许可证和兼容性,并愿意自行解决可能出现的问题。
RPMfusion官网:https://rpmfusion.org/
3.1. 安装RPM Fusion源
要启用对免费和非免费存储库的访问,请使用以下命令:
Fedora with dnf:
1 | sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm |
在Fedora上,我们默认使用openh264库,因此您需要明确启用存储库:
1 |
|
RHEL or compatible like CentOS
1 |
|
CentOS Steam 8 requires an additional step
1 | sudo dnf config-manager --enable powertools |
CentOS 8 (older version) used a case sensitive name for the PowerTools repository
1 | sudo dnf config-manager --enable PowerTools |
RHEL 8 requires an additional step
1 | sudo subscription-manager repos --enable "codeready-builder-for-rhel-8-$(uname -m)-rpms" |
4. IUS (Inline with Upstream Stable) 源
IUS源提供了许多与上游稳定版本保持一致的开源软件包,包括PHP、Python、Nginx等。如果你需要跟踪上游软件的最新版本,同时又想保持系统的稳定性,那么IUS源是一个不错的选择。
5. Nux Dextop
Nux Dextop repository:这个仓库提供了一些最新的桌面软件和开发工具,如LibreOffice、GIMP等。如果你需要在RHEL上使用最新的桌面应用程序,那么Nux Dextop源是一个很好的选择。
6. 查询安装包对应的yum源
有一些网站和工具可以帮助你查询安装包对应的yum源以及提供的版本。以下是一些常用的资源:
RPM Search:这是一个在线搜索RPM软件包的网站,你可以在上面搜索特定的软件包,并查看提供该软件包的不同yum源及其版本信息。
RPM Seek:这是一个提供RPM包搜索服务的网站。你可以在该网站上搜索特定的RPM软件包,并获取相关的下载链接和版本信息。
PKGS.org:这是一个综合性的软件包搜索网站,支持多种Linux发行版和包管理器,包括RPM。你可以在该网站上搜索RPM软件包,并查看不同发行版中的软件包版本和可用性。
rpmfind.net是一个提供RPM包搜索服务的网站。用户可以在该网站上搜索并查找特定的RPM软件包。该网站通常会索引多个不同的RPM仓库和软件源,以便用户能够找到他们所需的软件包。
Repoquery:这是一个在本地系统上查询yum源的软件包信息的工具。使用repoquery,你可以查找特定软件包在哪个yum源中可用,以及该源提供的软件包版本。要使用repoquery,你需要在终端中运行相应的命令,如 repoquery –whatprovides
。
repoquery是yum扩展工具包yum-utils中的一个工具,所有如果你没有repoquery命令的话,可以先 sudo yum install yum-utils 安装yum-utils包。YUM Utils:这是一组额外的工具和程序,用于管理和维护YUM软件包安装器。其中一些工具,如package-cleanup,可以帮助你查找并管理系统中安装的软件包及其版本。你可以使用YUM Utils来查询软件包在不同yum源中的可用性。
需要注意的是,具体的网站和工具可能会因Linux发行版和软件包管理器的不同而有所变化。对于基于RHEL、CentOS或Fedora的系统,上述资源通常适用。然而,对于其他发行版,你可能需要查找相应的资源或工具来查询软件包对应的yum源和版本信息。
另外,记得在使用第三方yum源时要谨慎,并确保其可信度和与你的系统版本兼容。在添加新的yum源之前,最好先在测试环境中进行验证,以确保稳定性和安全性。