Linux

CentOS 6 で yum update した時、remi-php70 レポジトリ内のパッケージの依存性解決ができない場合の解決方法

投稿日:2016年9月16日 更新日:

現象

remi-php70 リポジトリを使っている CentOS 6 の環境で PHP関連のパッケージを更新しようと思い、以下のコマンドを実行しました。

$ sudo yum update --enablerepo=remi-php70

すると、以下のエラーが発生しました。

yum-update-remi-php70-error

この中に、

Requires: php-common(x86-64) = 7.0.11-1.el6.remi

とあり、バージョン 7.0.11 の php-common パッケージを必要としていることが分かりますが、実は、このパッケージは remi-php70 リポジトリにあることが分かっています(php-common – Common files for PHP)。
しかし、Available のところを見ると base リポジトリと updates リポジトリの情報しか表示されていません。

この場合の解決方法を3つ説明します。

解決方法 その1

base リポジトリと updates リポジトリを無効にして、yum update します。

$ sudo yum update --enablerepo=remi-php70 --disablerepo=base,updates

解決方法 その2

/etc/yum.repos.d/remi-php70.repoファイル内の [remi-php70]のところに 以下を追記して remi-php70 リポジトリの優先度を上げます。

priority=1

その後、yum update を実行します。

解決方法 その3

baseリポジトリと updatesリポジトリ内の php関連パッケージを使わないよう設定します。

/etc/yum.repos.d/CentOS-Base.repoファイル内の [base][updates] の両方に以下を追記します。

exclude=php*

その後、yum update を実行します。

まとめ

remi-php70 のようなリポジトリから PHPを導入して使うのであれば、最初から「解決方法 その3」をやっておくのがスマートなやり方だったように思いました。

参考

📂-Linux
-

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

CentOS

CentOS 8 を CentOS Stream に移行するコマンド

目次1. 突然の CentOS 8 終了宣言2. CentOS Stream に移行するコマンド3. 2021年5月:移行作業を行いました4. 参考 1. 突然の CentOS 8 終了宣言 Cent …

Linux

ssh-agent の代わりに gpg-agent を使う手順

ssh-agent の代わりに gpg-agent を使う手順について説明します。

CentOS

CentOS Stream release 8 で「Configuration: OptionBinding with id “failovermethod” does not exist」というエラーが表示される

CentOS Stream release 8 で「Configuration: OptionBinding with id “failovermethod” does not exist」というエラーが表示される場合の対応についてです。

Linux

コマンドに対してデフォルトで指定されているオプションを調べる

Linux などの UNIX系OS環境では、コマンドを入力して実行する機会が多いと思いますが、それぞれの環境によって、いくつかのコマンドオプションがデフォルトで指定されている場合があります。 ※ ログ …

Vim

Vim でファイルを編集した後、sudo でそのファイルを保存する

目次1. 困った状況2. 対応方法3. ~/.vimrc にキーマップを登録する4. 参考 1. 困った状況 Vim でファイルを編集した後に、sudo で開いていないことに気付いた場合の対処法です。 …