这是一个类似的问题: 如何在 CentOS 8 中启用 PowerTools 存储库?
我正在尝试在运行 RHEL 8.2 的 EC2 AWS 上设置无头 Web 服务器。由于它是没有 GUI 的无头服务器,我只需要使用 Firefox 浏览器进行一些 Web 配置。话虽如此,在客户端,我使用 Putty 远程 SSH 到服务器,并使用 Xming 显示浏览器。我认为需要 PowerTools 才能在xorg-x11-apps
我的情况下在 RHEL 8.2 中安装,以便在我的 VM 中安装显示,这样我就可以通过 Putty SSH 远程运行我的 Firefox。
附注:
(在服务器端)
- 已安装 Firefox 和必备软件包
- 已安装 xauth 和 xorg-x11*
- 配置 /etc/ssh/ssh_config (FowardX11 是,FowardX11Trusted 是)
- 配置 /etc/ssh/sshd_config (X11Forwarding 是)
- 导出 DISPLAY=ip:0.0
(在客户端 - PuTTy)
- 安装并配置 XMing
- 通过 Putty 进行 X 转发的 SSH(启用 X11Forwarding 且 X 显示位置为:0.0)
我安装了epel:
$ yum install dnf-plugins-core
$ dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
$ yum install epel-release
但是当我尝试启用 PowerTools 时,收到以下错误:
$ dnf config-manager --set-enabled PowerTools
Error: Unknown repo: 'PowerTools'
当我检查 repo 列表时,没有安装 PowerTools:
$ yum repolist
repo id repo name
epel Extra Packages for Enterprise Linux 8 - x86_64
epel-modular Extra Packages for Enterprise Linux Modular 8 - x86_64
rhel-8-appstream-rhui-rpms Red Hat Enterprise Linux 8 for x86_64 - AppStream from RHUI (RPMs)
rhel-8-baseos-rhui-rpms Red Hat Enterprise Linux 8 for x86_64 - BaseOS from RHUI (RPMs)
rhui-client-config-server-8 Red Hat Update Infrastructure 3 Client Configuration Server 8
我该如何解决这个问题,以便能够启用 PowerTools 来运行该dnf config-manager --set-enabled PowerTools
命令?
非常感谢!
答案1
CentOS 和 RHEL 实际上是不同的,尽管一个是另一个的“克隆”。
所讨论的存储库的规范名称实际上是CodeReady Linux 构建器。但是,它已注册商标,因此在 CentOS 中它有一个不同的名字 - PowerTools。
由于您使用的是 RHEL,因此您应该启用 CodeReady Linux Builder 存储库:
subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
根据此 AWS 文档,它可以通过以下方式启用:
sudo dnf config-manager --set-enabled codeready-builder-for-rhel-8-rhui-rpms
答案2
如果你使用 ubi8 容器镜像
FROM registry.access.redhat.com/ubi8/ubi:latest
并且您没有 RHEL 订阅来启用 CodeReady Builder,那么您唯一的选择是使用 CentOS PowerTools,即使您使用的是 RHEL。在这种情况下
RUN dnf -y --setopt=install_weak_deps=False --setopt=tsflags=nodocs install \
http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/centos-gpg-keys-8-6.el8.noarch.rpm \
http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/centos-stream-repos-8-6.el8.noarch.rpm \
&& dnf -y --setopt=install_weak_deps=False --setopt=tsflags=nodocs install epel-release \
&& dnf config-manager --set-enabled powertools
如您所见,安装这些存储库本质上就是将您的系统变成 CentOS。鉴于 CentOS Stream 是 RHEL 的上游,从下游发行版(如 Alma、Rocky 等)中选择软件包可能更有意义。
或者,您可以通过运行安装依赖项dnf
,然后从直接 URL 安装 PowerTools 所需的包。如果 PowerTools 包没有其他 PowerTools 依赖项,这是可行的。例如
RUN curl -Lo ninja.rpm https://cbs.centos.org/kojifiles/packages/ninja-build/1.10.2/2.el8/x86_64/ninja-build-1.10.2-2.el8.x86_64.rpm
RUN microdnf -y --setopt=install_weak_deps=0 --setopt=tsflags=nodocs install \
emacs-filesystem \
python3 \
vim-filesystem
RUN rpm -iv ninja.rpm
答案3
订阅管理器存储库 --启用 codeready-builder-for-rhel-8-x86_64-rpms
yum repolist 更新订阅管理存储库。 repo id 仓库名称 codeready-builder-for-rhel-8-x86_64-rpms Red Hat CodeReady Linux Builder for RHEL 8 x86_64 (RPMs) copr:copr.fedorainfracloud.org:group_cloud-init:el-stable Copr repo for el-stable 归 @cloud-init 所有 docker-ce-nightly Docker CE Nightly - x86_64 docker-ce-stable Docker CE Stable - x86_64 docker-ce-test Docker CE Test - x86_64 epel Extra Packages for Enterprise Linux 8 - x86_64 epel-modular Extra Packages for Enterprise Linux Modular 8 - x86_64 ol7_UEKR5 适用于 Oracle Linux 8 (x86_64) 的最新 Unbreakable Enterprise Kernel Release 5 ol7_latest Oracle Linux 8 最新版 (x86_64) ol7_oracle_instantclient适用于 Oracle Linux 8 (x86_64) 的 Oracle Instant Client rhel-8-for-x86_64-appstream-rpms 适用于 x86_64 的 Red Hat Enterprise Linux 8 - AppStream (RPM) rhel-8-for-x86_64-baseos-rpms 适用于 x86_64 的 Red Hat Enterprise Linux 8 - BaseOS (RPM)
yum install perl-IPC-Run 现在你可以安装它了