我在尝试在 Red Hat Enterprise Linux 客户端版本 7.2 上安装 screen 时遇到问题。
我努力了:
sudo yum install screen
还...
sudo yum install screen.x86_64
跑步...
sudo yum list screen
产量...
错误:没有匹配的软件包可列出
+-------------------------------------------+
Installed Product Status
+-------------------------------------------+
Product Name: Red Hat Enterprise Linux Desktop
Product ID: 68
Version: 7.5
Arch: x86_64
Status: Subscribed
Status Details:
Starts: 04/24/2018
Ends: 04/24/2019
跑步sudo yum repolist
给了我这个:
repo id repo name status
elasticsearch-2.x Elasticsearch repository for 2.x packages - 22
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 - 12585
google-chrome google-chrome - 3
kibana-4.4 Kibana repository for 4.4 x packages - 5
logstash-2.2 logstash repository for 2.2 packages - 5
rhel-7-desktop-rpms/7Client/x86_64 Red Hat Enterprise Linux 7 Desktop (RPMs) - 16420
repolist: 29,040
我绝对是一个新的 Linux 用户,所以如果这是一个简单的修复,我很抱歉,但我正在努力通过谷歌找到答案。
答案1
安装 screen 的命令肯定是yum -y install screen
。
由于 yum 报告找不到该包,因此您的问题要么是客户端上的元数据混乱,要么是服务器上的存储库混乱。这种情况可能是客户端问题。以下命令应该有助于清除客户端的任何简单问题:
service rhsmcertd restart
subscription-manager refresh
yum clean all && yum rm -rf /var/cache/yum && yum makecache
另外,请确保您的存储库由订阅管理器管理。配置文件/etc/rhsm/rhsm.conf
需要设置以下值manage_repos = 1
。如果您的存储库以前不受管理,请进行更改并执行前面的步骤。
如果问题出在服务器上,并且您无权访问存储库,那么通过这些方法安装它就不走运了。不过,您始终可以手动下载 RPM,然后在本地安装该文件
yum -y localinstall ~/Downloads/screen
编辑:由于某种原因,您配置的存储库无法正常工作。我有 rhel-6-workstation-rpm 订阅,这就是 screen 软件包所在的位置。我看到您有 rhel-7-desktop-rpm 订阅,这是我希望 rpm 所在的存储库。
运行以下命令查看是否有任何禁用的存储库:
egrep -Hi '(^\[|^enabled)' /etc/yum.repos.d/*
如果有一个看起来很重要的被禁用的存储库,请修改配置文件,并将该存储库更改为启用
您还可以查找应附加到您的计算机的任何可用订阅:
subscription-manager list --all
该输出会相当长,因此请仔细查看。
答案2
我将其作为新答案发布,因为我非常有信心这是您问题的正确“解决方案”。
不幸的是,如果你在 Redhat 软件包搜索中查找软件包(需要 RedHat 帐户)
您将看到“屏幕”包是不是可在“rhel-7-desktop-rpms”存储库中找到。这个包是仅有的可在以下存储库中找到:
- rhel-7-服务器-rpm
- rhel-7-server-eus-rpms
- rhel-7-workstation-rpms
本质上,您没有包含屏幕包的正确订阅。
这似乎很荒谬,因为 screen 是一个非常重要的软件包,并且通常是所有机器上安装的要求。
在桌面与工作站订阅之间进行选择时,这些区别应该更加明显,因为它们不是直觉的。我以前也遇到过这个问题,这是我对 RedHat 最大的抱怨之一。
答案3
答案4
screen-4.1.0-0.25.20120314git3c2946.el7.x86_64.rpm
位于 RHEL 7.6 安装 DVD 上。
目前我还没有 RHEL-7.2,无法真正了解,但screen
我确信安装 DVD 上有它。另一个可能性正在使用 Redhat 的桌面/工作站版本而不是服务器然后或许该screen
软件包不可用(但我对此表示怀疑)。
- 你肯定想做一个
yum install screen
- yum 将搜索下面指定的所有活动存储库
/etc/yum.repos.d/
- 即使安装了 RHEL DVD,通常也没有活动存储库指向 DVD 驱动器以供 yum 参考。
- 如果
screen
没有依赖关系,你会发现,你可以简单地做- mkdir /mydvd
mount -o loop rhel-server-7.6-x86_64-dvd.iso /mydvd
cp /mydvd/Packages/screen-4.1.0-0.25.20120314git3c2946.el7.x86_64.rpm .
yum install ./screen-4.1.0-0.25.20120314git3c2946.el7.x86_64.rpm
我最喜欢的选项是将所有 rpm 从安装 DVD Packages 文件夹复制到某个文件夹,例如/root/repoDVD
.然后您只需拥有一个本地存储库,即安装 DVD,您不需要 DVD。只需执行createrepo /root/repoDVD
并在/etc/yum.repos.d
.
# local repository
# name this file /etc/yum.repos.d/<anything>.repo
[dvd]
name = Local Copy of Install DVD
baseurl=file:///root/repoDVD
enabled=1
gpgcheck=0 # change this if desired, no reason not to the gpgkey is on the dvd
这样,就有一个供 yum 参考的本地存储库(即安装 DVD 的全部内容),它将以正确的方式解决出现的任何依赖项。