YUM UPDATEが永遠に中断されました。

YUM UPDATEが永遠に中断されました。

RHEL 5.6用のリポジトリを作成しました。 RHEL 5.2の既存のリポジトリを削除しました。

次のコマンドを実行しました。

yum clean all

yum clean metadata

次に、

yum list all

すべてのパッケージを一覧表示します。

しかし、YUM UPDATEと入力すると。見せる

Setting up Update Process
Setting up repositories
rhel-local                100% |=========================|  951 B    00:0
Reading repository metadata in from local files
primary.xml.gz            100% |=========================| 1.1 MB    00:0
################################################## 3229/3229
Setting up Update Process
Setting up repositories
Reading repository metadata in from local files

これはすべてです。 YUM アップデート もう回答はありません。

yumがなぜ詰まっているのかご存知ですか?

答え1

RPMデータベースを再構築することもできます。

yum clean all
rpm --rebuilddb

答え2

私の場合、RPMデータベースのロックによりyumがクラッシュしました。

ジョブはstrace yum --verbose --noplugins info次の場所で中断されます。

open("/var/lib/rpm/.dbenv.lock", O_RDWR|O_CREAT, 0644) = 5
umask(022)                              = 022
fcntl(5, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0,  len=0}Killed

この問題を解決するためにrootとして実行しました。

rm /var/lib/rpm/.dbenv.lock

答え3

yumこれは通常、他のプロセスがすでに実行されている場合、またはシステムで維持されているメタデータが破損している場合に発生します。yum

最初の問題では、通常、既存のyumプロセスをすべて終了してから、このコマンドを実行します。yum-complete-transactionこれにより、yumはyup自体を整理できます。

2番目の問題の場合、通常はaを実行してyum clean allすべてのメタデータとパッケージを削除し、yum update正常に実行する必要があります。

場合によっては、package-cleanup <options>他の問題に対してRPMデータベースをクリーンアップするためにこのコマンドを実行することもあります。

  • 重複パッケージをクリーンアップします(ローカルRPMデータベースで重複エントリを検索し、以前のバージョンをクリーンアップします)。

    package-cleanup --cleandupes
    
  • 問題の検出(ローカルRPMデータベースの依存関係の問題を一覧表示します。問題が検出された場合は終了コード1で終了します)

    package-cleanup --problems
    
  • 孤児のリストを作成します。 (現在設定されているリポジトリで利用できないインストール済みパッケージを一覧表示します。これは同じで、yum list extrasより良い出力を提供します。)

    package-cleanup --orphans
    

答え4

/var/log/messagesでiscsiエラーメッセージが見つかりました。その後、iscsiとiscidデーモンを停止しました。その後、yumは更新プロセスを完了します。

関連情報