我正在 centos7 中用 yum 尝试一些奇怪的东西,让我们看看是否有人明白发生了什么:
通常,我使用 升级软件包sudo yum install <package_name>-<version_info>
,例如,现在,我正在尝试将elasticsearch
软件包从升级v6.7.1
到7.1.1
。为此,我首先需要(根据 Elasticsearch 文档的建议)升级到6.8.0
,所以我执行了yum install elasticsearch-6.8.0
并且包已正确升级。
现在,如果我检查 Elasticsearch 的版本,我得到:
[root@centos7 vagrant]# rpm -qa | grep elasticsearch
elasticsearch-6.8.0-1.noarch
现在,我添加 Elasticsearch 存储库7.x
:
# rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
# cat > /etc/yum.repos.d/elastic.repo << EOF
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
并检查软件包 elasticsearch-7.1.1 是否存在并且可用:
[root@centos7 vagrant]# yum --showduplicates list elasticsearch | expand | grep 7.
elasticsearch.noarch 6.7.0-1 elasticsearch-6.x
elasticsearch.noarch 6.7.1-1 elasticsearch-6.x
elasticsearch.noarch 6.7.2-1 elasticsearch-6.x
elasticsearch.x86_64 7.0.0-1 elasticsearch-7.x
elasticsearch.x86_64 7.0.1-1 elasticsearch-7.x
elasticsearch.x86_64 7.1.0-1 elasticsearch-7.x
elasticsearch.x86_64 7.1.1-1 elasticsearch-7.x
elasticsearch.x86_64 7.2.0-1 elasticsearch-7.x
但是,如果我尝试elasticsearch-7.1.1
使用yum install
我安装:
[root@centos7 vagrant]# yum install elasticsearch-7.1.1
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.tedra.es
* extras: mirror.gadix.com
* updates: mirror.gadix.com
Nothing to do
而且,如果我尝试使用升级到,我发现了这个有趣的问题:
[root@centos7 vagrant]# yum upgrade-to elasticsearch-7.1.1
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.tedra.es
* extras: mirror.gadix.com
* updates: mirror.gadix.com
Package(s) elasticsearch-7.1.1 available, but not installed.
No packages marked for update
软件包elasticsearch-7.1.1可用,但未安装。
如果我尝试一下,yum install elasticsearch
它会让我升级到 7.2.0
可能发生什么事?为什么yum说elasticsearch没有安装?查看以下命令的输出:
[root@centos7 vagrant]# yum list installed | grep elasticsearch
elasticsearch.noarch 6.8.0-1 @elasticsearch-6.x
kibana.x86_64 6.8.0-1 @elasticsearch-6.x
logstash.noarch 1:6.8.0-1 @elasticsearch-6.x
我希望有一个人可以帮助我。问候并非常感谢。
编辑
运行并--verbose
没有给我们更多的信息
Loading "fastestmirror" plugin
Config time: 0.005
Yum version: 3.4.3
rpmdb time: 0.000
Setting up Package Sacks
Loading mirror speeds from cached hostfile
* base: mirror.tedra.es
* extras: mirror.gadix.com
* updates: mirror.gadix.com
pkgsack time: 0.009
Building updates object
up:Obs Init time: 0.069
up:simple updates time: 0.004
up:obs time: 0.001
up:condense time: 0.000
updates time: 0.148
Nothing to do
如果我尝试手动下载软件包并安装它,我可以毫无问题地升级,但我想了解存储库发生了什么。
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.1.1-x86_64.rpm
yum install elasticsearch-7.1.1-x86_64.rpm
答案1
我刚刚尝试从 6.8.10 升级到 7.8.1 时偶然发现了同样的问题,当前最新版本是 7.9.0。我的解决方案是yum install elasticsearch
安装最新版本,然后yum downgrade elasticsearch-7.8.1-1.x86_64
降级到以前的版本。