LoginSignup
0
0

RHEL7でyum update 時にPHP5.4がアップデート出来ない場合の対応

Last updated at Posted at 2020-02-27

RedHat Enterprise Linux 7(RHEL7)で、yum updateしようとした際に次のようなメッセージが表示され、php5.4のアップデートに失敗する場合があります。

# yum update
読み込んだプラグイン:langpacks, product-id, search-disabled-repos, subscription-manager
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ php.x86_64 0:5.4.16-46.el7 を 更新
---> パッケージ php.x86_64 0:5.4.16-46.1.el7_7 を アップデート
---> パッケージ php-cli.x86_64 0:5.4.16-46.el7 を 更新
--> 依存性の処理をしています: php-cli(x86-64) = 5.4.16-46.el7 のパッケージ: php-devel-5.4.16-46.el7.x86_64
---> パッケージ php-cli.x86_64 0:5.4.16-46.1.el7_7 を アップデート
---> パッケージ php-common.x86_64 0:5.4.16-46.el7 を 更新
--> 依存性の処理をしています: php-common(x86-64) = 5.4.16-46.el7 のパッケージ: php-mbstring-5.4.16-46.el7.x86_64
---> パッケージ php-common.x86_64 0:5.4.16-46.1.el7_7 を アップデート
---> パッケージ php-gd.x86_64 0:5.4.16-46.el7 を 更新
---> パッケージ php-gd.x86_64 0:5.4.16-46.1.el7_7 を アップデート
---> パッケージ php-mysql.x86_64 0:5.4.16-46.el7 を 更新
---> パッケージ php-mysql.x86_64 0:5.4.16-46.1.el7_7 を アップデート
---> パッケージ php-pdo.x86_64 0:5.4.16-46.el7 を 更新
---> パッケージ php-pdo.x86_64 0:5.4.16-46.1.el7_7 を アップデート
---> パッケージ php-process.x86_64 0:5.4.16-46.el7 を 更新
---> パッケージ php-process.x86_64 0:5.4.16-46.1.el7_7 を アップデート
---> パッケージ php-xml.x86_64 0:5.4.16-46.el7 を 更新
---> パッケージ php-xml.x86_64 0:5.4.16-46.1.el7_7 を アップデート
---> パッケージ php-xmlrpc.x86_64 0:5.4.16-46.el7 を 更新
---> パッケージ php-xmlrpc.x86_64 0:5.4.16-46.1.el7_7 を アップデート
--> 依存性解決を終了しました。
エラー: パッケージ: php-devel-5.4.16-46.el7.x86_64 (@rhel-7-server-optional-rpms)
             要求: php-cli(x86-64) = 5.4.16-46.el7
            削除中: php-cli-5.4.16-46.el7.x86_64 (@rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-46.el7
            次のものにより更新された: : php-cli-5.4.16-46.1.el7_7.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-46.1.el7_7
            利用可能: php-cli-5.4.16-21.el7.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-21.el7
            利用可能: php-cli-5.4.16-23.el7_0.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-23.el7_0
            利用可能: php-cli-5.4.16-23.el7_0.1.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-23.el7_0.1
            利用可能: php-cli-5.4.16-23.el7_0.3.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-23.el7_0.3
            利用可能: php-cli-5.4.16-36.el7_1.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-36.el7_1
            利用可能: php-cli-5.4.16-36.1.el7_2.1.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-36.1.el7_2.1
            利用可能: php-cli-5.4.16-36.3.el7_2.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-36.3.el7_2
            利用可能: php-cli-5.4.16-42.el7.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-42.el7
            利用可能: php-cli-5.4.16-43.el7_4.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-43.el7_4
            利用可能: php-cli-5.4.16-43.el7_4.1.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-43.el7_4.1
            利用可能: php-cli-5.4.16-45.el7.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-45.el7
エラー: パッケージ: php-mbstring-5.4.16-46.el7.x86_64 (@rhel-7-server-optional-rpms)
             要求: php-common(x86-64) = 5.4.16-46.el7
            削除中: php-common-5.4.16-46.el7.x86_64 (@rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-46.el7
            次のものにより更新された: : php-common-5.4.16-46.1.el7_7.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-46.1.el7_7
            利用可能: php-common-5.4.16-21.el7.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-21.el7
            利用可能: php-common-5.4.16-23.el7_0.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-23.el7_0
            利用可能: php-common-5.4.16-23.el7_0.1.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-23.el7_0.1
            利用可能: php-common-5.4.16-23.el7_0.3.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-23.el7_0.3
            利用可能: php-common-5.4.16-36.el7_1.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-36.el7_1
            利用可能: php-common-5.4.16-36.1.el7_2.1.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-36.1.el7_2.1
            利用可能: php-common-5.4.16-36.3.el7_2.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-36.3.el7_2
            利用可能: php-common-5.4.16-42.el7.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-42.el7
            利用可能: php-common-5.4.16-43.el7_4.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-43.el7_4
            利用可能: php-common-5.4.16-43.el7_4.1.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-43.el7_4.1
            利用可能: php-common-5.4.16-45.el7.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-45.el7
**********************************************************************
yum can be configured to try to resolve such errors by temporarily enabling
disabled repos and searching for missing dependencies.
To enable this functionality please set 'notify_only=0' in /etc/yum/pluginconf.d/search-disabled-repos.conf
**********************************************************************
--> トランザクションの確認を実行しています。
---> パッケージ kernel.x86_64 0:3.10.0-693.5.2.el7 を 削除
---> パッケージ kernel-devel.x86_64 0:3.10.0-693.5.2.el7 を 削除
---> パッケージ php-cli.x86_64 0:5.4.16-46.el7 を 更新
--> 依存性の処理をしています: php-cli(x86-64) = 5.4.16-46.el7 のパッケージ: php-devel-5.4.16-46.el7.x86_64
---> パッケージ php-common.x86_64 0:5.4.16-46.el7 を 更新
--> 依存性の処理をしています: php-common(x86-64) = 5.4.16-46.el7 のパッケージ: php-mbstring-5.4.16-46.el7.x86_64
--> 依存性解決を終了しました。
エラー: パッケージ: php-devel-5.4.16-46.el7.x86_64 (@rhel-7-server-optional-rpms)
             要求: php-cli(x86-64) = 5.4.16-46.el7
            削除中: php-cli-5.4.16-46.el7.x86_64 (@rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-46.el7
            次のものにより更新された: : php-cli-5.4.16-46.1.el7_7.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-46.1.el7_7
            利用可能: php-cli-5.4.16-21.el7.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-21.el7
            利用可能: php-cli-5.4.16-23.el7_0.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-23.el7_0
            利用可能: php-cli-5.4.16-23.el7_0.1.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-23.el7_0.1
            利用可能: php-cli-5.4.16-23.el7_0.3.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-23.el7_0.3
            利用可能: php-cli-5.4.16-36.el7_1.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-36.el7_1
            利用可能: php-cli-5.4.16-36.1.el7_2.1.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-36.1.el7_2.1
            利用可能: php-cli-5.4.16-36.3.el7_2.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-36.3.el7_2
            利用可能: php-cli-5.4.16-42.el7.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-42.el7
            利用可能: php-cli-5.4.16-43.el7_4.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-43.el7_4
            利用可能: php-cli-5.4.16-43.el7_4.1.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-43.el7_4.1
            利用可能: php-cli-5.4.16-45.el7.x86_64 (rhel-7-server-rpms)
                php-cli(x86-64) = 5.4.16-45.el7
エラー: パッケージ: php-mbstring-5.4.16-46.el7.x86_64 (@rhel-7-server-optional-rpms)
             要求: php-common(x86-64) = 5.4.16-46.el7
            削除中: php-common-5.4.16-46.el7.x86_64 (@rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-46.el7
            次のものにより更新された: : php-common-5.4.16-46.1.el7_7.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-46.1.el7_7
            利用可能: php-common-5.4.16-21.el7.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-21.el7
            利用可能: php-common-5.4.16-23.el7_0.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-23.el7_0
            利用可能: php-common-5.4.16-23.el7_0.1.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-23.el7_0.1
            利用可能: php-common-5.4.16-23.el7_0.3.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-23.el7_0.3
            利用可能: php-common-5.4.16-36.el7_1.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-36.el7_1
            利用可能: php-common-5.4.16-36.1.el7_2.1.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-36.1.el7_2.1
            利用可能: php-common-5.4.16-36.3.el7_2.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-36.3.el7_2
            利用可能: php-common-5.4.16-42.el7.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-42.el7
            利用可能: php-common-5.4.16-43.el7_4.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-43.el7_4
            利用可能: php-common-5.4.16-43.el7_4.1.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-43.el7_4.1
            利用可能: php-common-5.4.16-45.el7.x86_64 (rhel-7-server-rpms)
                php-common(x86-64) = 5.4.16-45.el7
 問題を回避するために --skip-broken を用いることができます。
 これらを試行できます: rpm -Va --nofiles --nodigest

原因

rhel-7-server-optional-rpms リポジトリ(チャンネル)がenableでないと、当該事象が発生します。
上記リポジトリがenableであるかどうかは、yum repolistコマンドで確認することができます。
以下のような状態である(rhel-7-server-optional-rpmsがenableである)場合は、当該事象は発生しません。
rhel-7-server-optional-rpmsが結果に表示されない場合は、当該事象が発生する可能性があります。

# yum repolist
読み込んだプラグイン:langpacks, product-id, search-disabled-repos, subscription-manager
リポジトリー ID                                                   リポジトリー名                                                              状態
rhel-7-server-optional-rpms/7Server/x86_64                        Red Hat Enterprise Linux 7 Server - Optional (RPMs)                         19,656
rhel-7-server-rpms/7Server/x86_64                                 Red Hat Enterprise Linux 7 Server (RPMs)                                    27,011

対応

以下のコマンドを実行し、rhel-7-server-optional-rpmsリポジトリを追加します。

subscription-manager repos --enable rhel-7-server-optional-rpms

注意点

optionalリポジトリは、RHELのサポート対象ではない(RedHatのグローバルサポートサービスを受けられない)ため、導入に際しては注意が必要です。
https://access.redhat.com/ja/solutions/4387631

Red Hat では、Red Hat/Red Hat JBoss 製品の機能に加えて、お客様の利便性を向上させるソフトウェアパッケージ (RPM) を追加で提供しています。これらのソフトウェアパッケージには、オープンソースライセンスのソフトウェア (「Optional」Red Hat Network チャンネル) および商用ライセンスのソフトウェア (「Supplementary」Red Hat Network チャンネル) があります。Optional および Supplementary チャンネルのソフトウェアパッケージはサポート対象ではなく、ABI の保証も適用されません。
RHELでoptionalリポジトリに属するPHPパッケージは次のとおりです。

  • php-bcmath
  • php-devel
  • php-embedded
  • php-enchant
  • php-dba
  • php-fpm
  • php-intl
  • php-mbstring
  • php-mysqlnd
  • php-pspell
  • php-snmp

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0