我有一台安装了 IUS 的 RHEL 7 64 位机器。我们正在尝试获取 php 7.1 的最新修补程序版本。我要下载的版本是 7.1.22,我们在 7.1.21。我已经清理了我们的缓存,yum clean all
然后使用yum makecache
.
这是 IUS 网页 - https://dl.iuscommunity.org/pub/ius/stable/Redhat/7/x86_64/repoview/letter_p.group.html
我已经安装了安装了 IUS 的 RPM,并启用了 IUS 存储库。
[ius-archive]
name=IUS Community Packages for Enterprise Linux 7 - $basearch - Archive
#baseurl=https://dl.iuscommunity.org/pub/ius/archive/Redhat/7/$basearch
mirrorlist=https://mirrors.iuscommunity.org/mirrorlist?repo=ius-el7-archive&arch=$basearch&protocol=http
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/IUS-COMMUNITY-GPG-KEY
但是,当我对任何需要更新的 php 包进行 yum 升级时(即使我做了类似的事情yum upgrade php71u
),我得到 - No packages marked for update
。
这是服务器上软件包的快照 -
[root@myserver yum.repos.d]# rpm -qa | grep php71u
php71u-bcmath-7.1.21-1.ius.el7.x86_64
php71u-pdo-7.1.21-1.ius.el7.x86_64
php71u-tidy-7.1.21-1.ius.el7.x86_64
php71u-xml-7.1.21-1.ius.el7.x86_64
php71u-mcrypt-7.1.21-1.ius.el7.x86_64
php71u-xmlrpc-7.1.21-1.ius.el7.x86_64
php71u-json-7.1.21-1.ius.el7.x86_64
php71u-dba-7.1.21-1.ius.el7.x86_64
php71u-common-7.1.21-1.ius.el7.x86_64
php71u-ldap-7.1.21-1.ius.el7.x86_64
php71u-pecl-igbinary-2.0.5-2.ius.el7.x86_64
php71u-devel-7.1.21-1.ius.el7.x86_64
php71u-opcache-7.1.21-1.ius.el7.x86_64
php71u-cli-7.1.21-1.ius.el7.x86_64
但是,当我运行 a 时yum update php71u-cli
,它会告诉我No packages marked for update
。但是,在 IUS 稳定站点上,该软件包的版本为 7.1.22(这是我要更新的版本)。 https://dl.iuscommunity.org/pub/ius/stable/Redhat/7/x86_64/repoview/php71u-cli.html。
对于我尝试更新到版本 7.1.22 的每个 php 包,都会出现此问题。当我尝试对该特定版本进行 yum 安装时,它给了我同样的错误,当我执行时,yum --showduplicates list php71u-cli
我没有在列表中看到预期的版本。
如何从 IUS 获得 7.1.22 修补程序?
谢谢。
您的本地 yum 元数据(其中包括说明存储库中包含哪些软件包)在本地缓存并且仅定期更新。您可以删除缓存以强制对其进行更新:
在那之后,yum 将在下次尝试安装或更新软件包时下载新的元数据。
我发现了这个问题。我从他们的站点下载并安装的 IUS rpm 默认情况下不包括“稳定”,它包括“存档”、“开发”和“测试”。在我更改了其中一个 yum 存储库中的 baseurl 并执行了
yum clean all
/service httpd graceful
之后,它按预期工作。IUS默认不安装“稳定”,这很奇怪。这就是我将 yum 配置更改为 -