LoginSignup
0
0

More than 3 years have passed since last update.

CentOS7でPHP7.1をPHP7.3へバージョンアップする

Posted at

概要

CentOS7 に remi-php71 から PHP7.1 がインストールされている環境で、PHP7.1をアンインストールしてから新たにPHP7.3をインストールします。
yumコマンド実行時のリポジトリ指定で--enablerepoを使用せず、デフォルトで remi-php71 および epel が有効になっている場合を想定しています。

手順

現在有効になっているリポジトリを確認します。
ここでは epel および remi-php71 が有効になっていることが確認できました。

$ yum repolist enabled
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
     * base: ftp.iij.ad.jp
     * epel: mirrors.aliyun.com
     * epel-debuginfo: mirrors.aliyun.com
     * epel-source: mirrors.aliyun.com
     * extras: ftp.iij.ad.jp
     * remi-php71: ftp.riken.jp
     * remi-safe: ftp.riken.jp
     * updates: ftp.iij.ad.jp
    repo id               repo name                                           status
    base/7/x86_64         CentOS-7 - Base                                     10,097
    epel/x86_64           Extra Packages for Enterprise Linux 7 - x86_64      13,520
    epel-debuginfo/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 - De  2,805
    epel-source/x86_64    Extra Packages for Enterprise Linux 7 - x86_64 - So      0
    extras/7/x86_64       CentOS-7 - Extras                                      323
    mackerel/x86_64       mackerel-agent                                           4
    remi-php71            Remi's PHP 7.1 RPM repository for Enterprise Linux     434
    remi-safe             Safe Remi's RPM repository for Enterprise Linux 7 -  3,673
    updates/7/x86_64      CentOS-7 - Updates                                   1,117
    repolist: 31,973

remi-php71から導入されているパッケージを確認します。
php関連以外は導入されていないことが確認できました。

$ yum list installed | grep remi-php71
    php.x86_64                          7.1.33-4.el7.remi                @remi-php7
    php-bcmath.x86_64                   7.1.33-4.el7.remi                @remi-php7
    php-cli.x86_64                      7.1.33-4.el7.remi                @remi-php7
    php-common.x86_64                   7.1.33-4.el7.remi                @remi-php7
    php-gd.x86_64                       7.1.33-4.el7.remi                @remi-php7
    php-json.x86_64                     7.1.33-4.el7.remi                @remi-php7
    php-mbstring.x86_64                 7.1.33-4.el7.remi                @remi-php7
    php-mcrypt.x86_64                   7.1.33-4.el7.remi                @remi-php7
    php-mysqlnd.x86_64                  7.1.33-4.el7.remi                @remi-php7
    php-pdo.x86_64                      7.1.33-4.el7.remi                @remi-php7
    php-pecl-zip.x86_64                 1.17.0-1.el7.remi.7.1            @remi-php7
    php-process.x86_64                  7.1.33-4.el7.remi                @remi-php7
    php-tidy.x86_64                     7.1.33-4.el7.remi                @remi-php7
    php-xml.x86_64                      7.1.33-4.el7.remi                @remi-php7

php関連で導入されているパッケージを確認します。
remi-php71またはepelから導入されているパッケージがあることが確認できました。

$ yum list installed | grep php
    php.x86_64                          7.1.33-4.el7.remi                @remi-php71
    php-bcmath.x86_64                   7.1.33-4.el7.remi                @remi-php71
    php-cli.x86_64                      7.1.33-4.el7.remi                @remi-php71
    php-common.x86_64                   7.1.33-4.el7.remi                @remi-php71
    php-fedora-autoloader.noarch        1.0.0-1.el7                      @epel
    php-gd.x86_64                       7.1.33-4.el7.remi                @remi-php71
    php-json.x86_64                     7.1.33-4.el7.remi                @remi-php71
    php-mbstring.x86_64                 7.1.33-4.el7.remi                @remi-php71
    php-mcrypt.x86_64                   7.1.33-4.el7.remi                @remi-php71
    php-mysqlnd.x86_64                  7.1.33-4.el7.remi                @remi-php71
    php-pdo.x86_64                      7.1.33-4.el7.remi                @remi-php71
    php-pecl-zip.x86_64                 1.17.0-1.el7.remi.7.1            @remi-php71
    php-php-gettext.noarch              1.0.12-1.el7                     @epel
    php-process.x86_64                  7.1.33-4.el7.remi                @remi-php71
    php-tcpdf.noarch                    6.2.26-1.el7                     @epel
    php-tcpdf-dejavu-sans-fonts.noarch  6.2.26-1.el7                     @epel
    php-tidy.x86_64                     7.1.33-4.el7.remi                @remi-php71
    php-xml.x86_64                      7.1.33-4.el7.remi                @remi-php71

ここまでで、php関連パッケージをアンインストールしてから、remi-php73およびepelからphp関連パッケージをインストールすればよさそうなことがわかりました。

apacheを停止します。

$ sudo systemctl stop httpd

PHP7.1をアンインストールします。

$ sudo yum remove php-*
    ================================================================================
     Package                      Arch    Version                Repository    Size
    ================================================================================
    Removing:
     php                          x86_64  7.1.33-4.el7.remi      @remi-php71  9.4 M
     php-bcmath                   x86_64  7.1.33-4.el7.remi      @remi-php71   94 k
     php-cli                      x86_64  7.1.33-4.el7.remi      @remi-php71   14 M
     php-common                   x86_64  7.1.33-4.el7.remi      @remi-php71  8.0 M
     php-fedora-autoloader        noarch  1.0.0-1.el7            @epel         15 k
     php-gd                       x86_64  7.1.33-4.el7.remi      @remi-php71  204 k
     php-json                     x86_64  7.1.33-4.el7.remi      @remi-php71   80 k
     php-mbstring                 x86_64  7.1.33-4.el7.remi      @remi-php71  2.8 M
     php-mcrypt                   x86_64  7.1.33-4.el7.remi      @remi-php71   89 k
     php-mysqlnd                  x86_64  7.1.33-4.el7.remi      @remi-php71  850 k
     php-pdo                      x86_64  7.1.33-4.el7.remi      @remi-php71  386 k
     php-pecl-zip                 x86_64  1.17.0-1.el7.remi.7.1  @remi-php71  188 k
     php-php-gettext              noarch  1.0.12-1.el7           @epel         57 k
     php-process                  x86_64  7.1.33-4.el7.remi      @remi-php71  180 k
     php-tcpdf                    noarch  6.2.26-1.el7           @epel         11 M
     php-tcpdf-dejavu-sans-fonts  noarch  6.2.26-1.el7           @epel        1.5 M
     php-tidy                     x86_64  7.1.33-4.el7.remi      @remi-php71  106 k
     php-xml                      x86_64  7.1.33-4.el7.remi      @remi-php71  855 k

    Transaction Summary
    ================================================================================
    Remove  18 Packages

意図しないパッケージがアンインストールされないように注意しましょう。

続いて、有効にするリポジトリを切り替えます。
remi-php71を無効化し、remi-php73を有効化します。

$ sudo vi /etc/yum.repos.d/remi-php71.repo
    [remi-php71]
    enabled=0
$ sudo vi /etc/yum.repos.d/remi-php73.repo
    [remi-php73]
    enabled=1

PHP7.3をインストールします。
対象パッケージは先ほどアンインストールしたものを指定します。
提供されていないパッケージがある可能性もあるので注意しましょう。

$ sudo yum install php php-bcmath php-cli php-common php-fedora-autoloader php-gd php-json php-mbstring php-mcrypt php-mysqlnd php-pdo php-pecl-zip php-php-gettext php-process php-tcpdf php-tcpdf-dejavu-sans-fonts php-tidy php-xml
    ================================================================================
     Package                      Arch    Version                 Repository   Size
    ================================================================================
    Installing:
     php                          x86_64  7.3.14-1.el7.remi       remi-php73  3.2 M
     php-bcmath                   x86_64  7.3.14-1.el7.remi       remi-php73   74 k
     php-cli                      x86_64  7.3.14-1.el7.remi       remi-php73  4.9 M
     php-common                   x86_64  7.3.14-1.el7.remi       remi-php73  1.1 M
     php-fedora-autoloader        noarch  1.0.0-1.el7             epel        9.6 k
     php-gd                       x86_64  7.3.14-1.el7.remi       remi-php73   81 k
     php-json                     x86_64  7.3.14-1.el7.remi       remi-php73   66 k
     php-mbstring                 x86_64  7.3.14-1.el7.remi       remi-php73  511 k
     php-mysqlnd                  x86_64  7.3.14-1.el7.remi       remi-php73  235 k
     php-pdo                      x86_64  7.3.14-1.el7.remi       remi-php73  128 k
     php-pecl-mcrypt              x86_64  1.0.3-1.el7.remi.7.3    remi-php73   30 k
     php-pecl-zip                 x86_64  1.17.0-1.el7.remi.7.3   remi-php73   53 k
     php-php-gettext              noarch  1.0.12-1.el7            epel         23 k
     php-process                  x86_64  7.3.14-1.el7.remi       remi-php73   83 k
     php-tcpdf                    noarch  6.2.26-1.el7            epel        2.1 M
     php-tcpdf-dejavu-sans-fonts  noarch  6.2.26-1.el7            epel        257 k
     php-tidy                     x86_64  7.3.14-1.el7.remi       remi-php73   67 k
     php-xml                      x86_64  7.3.14-1.el7.remi       remi-php73  208 k
    Installing for dependencies:
     libargon2                    x86_64  20161029-3.el7          epel         23 k
     oniguruma5                   x86_64  6.9.4-1.el7.remi        remi-safe   197 k

    Transaction Summary
    ================================================================================
    Install  18 Packages (+2 Dependent packages)

PHPのバージョンを確認します。
PHP7.3になっていれば成功です。

$ php -v
    PHP 7.3.14 (cli) (built: Jan 21 2020 09:59:50) ( NTS )
    Copyright (c) 1997-2018 The PHP Group
    Zend Engine v3.3.14, Copyright (c) 1998-2018 Zend Technologies

apacheを起動します。

$ sudo systemctl start httpd

ブラウザでPHPで作られているWEBシステムが確認できればOKでしょう。

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