yumを使ってインストールやアップデートをしようとしたらうまくいかないことって意外とよく起きますよね…
例えば「Protected multilib versions」とか「Dependency resolution」とかよくわからない文字がつらつらと。(よくわからない、のは私に問題がありますw)
そういう時にちょっと役に立つかもしれないコマンドをまとめてみました!
パッケージの重複を削除する
冒頭で書いた「Protected multilib versions」の場合、いくつかの可能性がありますが、同じパッケージの違うバージョンが重複してインストールされている場合があります。
この場合は、重複削除をしてあげることで問題が解決します!重複削除を行うコマンドは「package-cleanup」というやつです。
# yum clean all # package-cleanup --cleandupes # yum updat
パッケージのバージョンを落とす(ダウングレード)
インストール済みのパッケージを古いバージョンに入れなおしたい場合には、ダウングレード(downgrade)というコマンドがあります。
なるべくパッケージ名は詳細に、バージョンまで指定してあげたほうがいいようです。
# yum downgrade パッケージ名
パッケージを削除する
荒業ですが、もう思い切ってパッケージを一旦削除するのもありの場合もあるかと思います。(うっかり重要なものを削除してしまう可能性もあり、最後の手段のような気がするけど。)
ただし、コアなパッケージの場合は、依存関係とかの問題で削除できない場合もあります。
# yum remove パッケージ名
おしまい
私が問題にぶち当たった理由はupdateしていたバージョンが新しすぎて、別のパッケージのインストール時に依存関係が解決できなかったからでした。
やっぱりこういう問題に出会うとyumの仕組みをよく理解しなければ、と思う次第です。安易なアップデートが悪いのか、使っているリポジトリが悪かったのか。
日々是勉強っすね!