2016-05-09 6 views
2

rpmyumを使用すると、アップデートに必要なパッケージが取得されないという問題が発生しています。私はメインパッケージから16.1から16.2へのアップグレードを行っています。私はyumをメインパッケージをアップグレードを実行する場合、私はこれを取得rpm/yumは、特に指定したときに必要なパッケージをピックアップしないのはなぜですか?

# yum upgrade 
... 
====================================================================================================== 
Package      Arch   Version      Repository   Size 
====================================================================================================== 
Updating: 
sub-package     x86_64   1.1-455015.el7    privaterepo   29 k 
main-package     noarch   16.2-460032.el7    privaterepo   1.9 M 
... 

# yum upgrade main-package 
====================================================================================================== 
Package      Arch   Version     Repository    Size 
====================================================================================================== 
Updating: 
main-package     noarch   16.2-460032.el7   privaterepo   1.9 M 

Transaction Summary 
====================================================================================================== 

私が必要だと思うしていないようです、私はyumのをアップグレードしない場合、私はこれを取得します

# rpm -q --requires -p main-package-16.2-460032.el7.noarch.rpm | grep -i sub-package 
sub-package >= 1.1 

# rpm -qa | grep sub-package 
sub-package-1.0-455013.el7.x86_64 

:RPMはそれがない示唆していても、新しいサブパッケージ私が見ているところによると、yumアップグレードメインパッケージを見ると、サブパッケージ> = 1.1が必要であることがわかります。私はインストールが正常に動作することを追加する必要があります。 回転数YUMが完全メインパッケージサブパッケージのバージョン1.1を必要とする要件を無視しているかのようです。

EDIT:

# rpm -q --provides -p sub-package-1.1-455015.el7.x86_64.rpm 
sub-package 
sub-package = 1.1-455015.el7 
sub-package(x86-64) = 1.1-455015.el7 

# rpm -q --requires -p main-package-16.2-460032.el7.noarch.rpm | grep sub-package 
sub-package >= 1.1 

ここでは、すでにインストールされています古いサブパッケージである:ここで

# rpm -q --provides sub-package 
sub-package 
sub-package = 1.0-455013.el7 
sub-package(x86-64) = 1.0-455013.el7 

があるがここ

は、回転数を約依存関係を示したものですスペックファイルの関連情報:

$ grep sub-package main-package.spec 
Requires: sub-package >= 1.1 

$ head -n4 sub-package.spec 
Summary: sub-package (...) 
Name: sub-package 
Version: 1.1 
Release: %{BUILD_NUMBER}%{?dist} 

EDIT 2:

私はいくつかのより多くの掘削を行ってきたが、私が気づいたことの一つは、私がのrpm -qは、サブパッケージを--whatprovides場合サブパッケージが2回表示されていることですここでは、それが拾う他の依存関係は1回だけリストされます。

+0

'サブパッケージ1.1-455015.el7'は* available *ですが、現在インストールされているものは何ですか?それが '1.1-somethingelse'ならば、要件が満たされます。 –

+0

#rpm -qa | grepサブパッケージ サブパッケージ-0.0-455013.el7.x86_64 – icub3d

+0

いつもそこにいましたか?どうして私がそれを逃したのか分からない...申し訳ありませんが、その後、アイデアはありません。 –

答えて

0

anwser、@alvitsのおかげで、私はサブパッケージ specファイルに

Provides: sub-package 

を持っていたということです。ヒントは、この行から来ている:

# rpm -q --provides -p sub-package-1.1-455015.el7.x86_64.rpm 
sub-package 
sub-package = 1.1-455015.el7 
sub-package(x86-64) = 1.1-455015.el7 

出力の最初の行は、そのサブパッケージ満たすすべてのバージョンの私のバージョンRPMを伝えます。

関連する問題