PHP7へのアップグレード時のパッケージの依存関係

PHP7へのアップグレード時のパッケージの依存関係

これが投稿に適した場所であるかどうかはわかりません。

私は最近Webサーバーの1つからPHP 7にアップグレードしましたが、別のWebサーバーで同じ操作を実行すると、次の依存関係エラーが発生します。

私がやっているステップは次のとおりです。

sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

sudo yum-config-manager --enable remi-php73

sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd


Error: Package: php-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libcrypto.so.10(OPENSSL_1.0.2)(64bit)
Error: Package: php-xml-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.14)(64bit)
Error: Package: php-ldap-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.14)(64bit)
Error: Package: php-ldap-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libsasl2.so.3()(64bit)
Error: Package: gd-last-2.2.5-10.el7.remi.x86_64 (remi-safe)
           Requires: libtiff.so.5(LIBTIFF_4.0)(64bit)
Error: Package: php-mysqlnd-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.15)(64bit)
Error: Package: gd-last-2.2.5-10.el7.remi.x86_64 (remi-safe)
           Requires: libc.so.6(GLIBC_2.14)(64bit)
Error: Package: php-json-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.14)(64bit)
Error: Package: libwebp7-1.0.2-1.el7.remi.x86_64 (remi-safe)
           Requires: libc.so.6(GLIBC_2.14)(64bit)
Error: Package: php-common-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.15)(64bit)
Error: Package: php-cli-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libcrypto.so.10(OPENSSL_1.0.2)(64bit)
Error: Package: php-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: httpd-mmn = 20120211x8664
           Installed: httpd-2.2.15-69.el6.centos.x86_64 (@base)
               httpd-mmn = 20051115
Error: Package: php-gd-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libpng15.so.15()(64bit)
Error: Package: php-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.15)(64bit)
Error: Package: php-cli-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.15)(64bit)
Error: Package: gd-last-2.2.5-10.el7.remi.x86_64 (remi-safe)
           Requires: libpng15.so.15()(64bit)
Error: Package: php-pecl-mcrypt-1.0.3-1.el7.remi.7.3.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.14)(64bit)
Error: Package: php-pdo-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.14)(64bit)
Error: Package: gd-last-2.2.5-10.el7.remi.x86_64 (remi-safe)
           Requires: libtiff.so.5()(64bit)
Error: Package: php-xml-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libxml2.so.2(LIBXML2_2.9.0)(64bit)
Error: Package: php-opcache-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libc.so.6(GLIBC_2.14)(64bit)
Error: Package: gd-last-2.2.5-10.el7.remi.x86_64 (remi-safe)
           Requires: libpng15.so.15(PNG15_0)(64bit)
Error: Package: php-cli-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libargon2.so.0()(64bit)
Error: Package: php-7.3.11-1.el7.remi.x86_64 (remi-php73)
           Requires: libargon2.so.0()(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

個人の依存関係をインストールしようとする最善を尽くしましたが、うまくいかないようです。

同様の問題に直面している可能性があるので、誰でもこの問題を解決するのに役立ちますか?

答え1

Error: Package: php-7.3.11-1.el7.remi.x86_64 (remi-php73)
       Requires: httpd-mmn = 20120211x8664
       Installed: httpd-2.2.15-69.el6.centos.x86_64 (@base)
           httpd-mmn = 20051115

「インストール済み」パッケージのバージョンにはel6.centosサフィックスがあります。これは、プライマリシステムがCentOSバージョン6.xである可能性があることを示します。インストールするパッケージはremirepoのパッケージで、バージョン7.x用です。

デフォルトのシステムライブラリバージョンが異なるため、RHEL / CentOS 7.xからRHEL / CentOS 6.x用のパッケージをインストールできません。これは、異なるメジャーバージョンが存在する重要な理由です。

一部の「別々の依存関係」をインストールした場合は、システムがサポートされていないCentOS 6と7の組み合わせになる可能性があります。

おそらく、次のいずれかのオプションを実行する必要があります。

  • アップグレード前の状態に戻り、もう一度評価してください。 (バックアップがうまくいっていると一番簡単になります。)
  • *.el7*インストールされているパッケージのリストを調べて、インストールされているすべてのパッケージを使用可能な最新の同等のパッケージに置き換え*.el6*ます。*.el7*(手動操作が多いがバックアップがなく、アップグレードできない場合、これはおそらく最善の回復作業です。)
  • システムをRHEL / CentOS 7.xにアップグレード/移行/再インストールします。同時に、新しい7.xシステムまたはVMを構築し、アプリケーションとデータを移行し、混乱した古い6.xシステムを解体することで可能です。 (CentOS 6.xのサポートライフサイクルがほぼ終わり、最初に6.xよりも新しいソフトウェアが必要になると思われるので、これは長期的に最良の選択肢かもしれません。)

関連情報