kakiro-webカキローウェブ

システム開発情報とコンピューター書籍の紹介サイト

CentOS7.1 64bitのyumリポジトリにRemiを追加

CentOS7.1の64bit版のyumリポジトリにRemiを追加する方法を以下に示します。

※CentOS6 64bitをご使用の場合は、当サイトのCentOS6 64bitのyumリポジトリにRemiを追加のページをご覧ください。

以下の各コマンドで、プロンプトが「#」で開始しているものはrootユーザーでの実行、「$」で開始しているものは一般ユーザーでの実行となります。

yumリポジトリにEPELを追加

Remiのyumリポジトリを追加するには、EPELのyumリポジトリが追加されている必要があります。

EPELのyumリポジトリの追加方法については、当サイトのCentOS7 64bitのyumリポジトリにEPELを追加のページをご覧ください。

Remiのリポジトリ設定パッケージをダウンロード

以下のコマンドを実行して、Remiのリポジトリ設定パッケージのダウンロードを行います。

※ダウンロード元のURLは、Remiの公式サイトにリンクがあります。

$ wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

Remiのリポジトリのインストール

以下のコマンドを実行して、Remiのリポジトリ設定パッケージのインストールを行います。

# rpm -Uvh remi-release-7.rpm

デフォルトの設定では、yumコマンドの実行時にremiのリポジトリは自動的には使用されないようになっています。この設定は、インストールされたRemiのリポジトリの設定ファイル「/etc/yum.repos.d/remi.repo」で、以下のように行われています。

[remi]
:(略)
enabled=0

※「enabled=1」と設定すると、remiのリポジトリがyumコマンドの実行時に自動的に使用されるようになります。

また、remi-safeというリポジトリが自動的に使用されるようになっています。こちらを明示的に使用されるようにしたい場合は、リポジトリの設定ファイル「/etc/yum.repos.d/remi-safe.repo」を、以下のように編集します。

[remi-safe]
:(略)
enabled=1
↓変更
enabled=0

yumコマンドの実行時にRemiのリポジトリを使用するには、以下のようにオプション「--enablerepo=remi」を付けて実行します。

# yum --enablerepo=remi list

尚、Remiのリポジトリと依存関係にあるEPELのリポジトリの両方を明示的に使用するには、以下のようにオプション「--enablerepo」に「remi」と「epel」をカンマで繋げて実行することができます。

# yum --enablerepo=remi,epel list

PHP5.6のインストール

CentOS7.1の標準リポジトリからインストールできるPHPのバージョンは5.4ですが、ApacheにCentOS7.1の標準リポジトリからインストールできるApache2.4.6を使用している場合、RemiのリポジトリからPHP5.6をインストールすることができます。

※当サイトのApache2.4をRPMからインストールする方法で紹介しているApache2.4をインストールしている場合は、RemiのリポジトリのPHPは、対象のApacheのMMN(Module Magic Number)の違いのためインストールできません。

PHP5.6のインストール

以下のコマンドを実行して、PHP5.6のインストールを行うことができます。

# yum --enablerepo=remi,epel install php56-php

尚、Remiのリポジトリから初めてyumコマンドでパッケージのインストールを行う際には、以下のような警告メッセージが表示されます。

警告: /var/cache/yum/x86_64/7/remi/packages/libzip-last-1.0.1-1.el7.remi.x86_64.rpm: ヘッダー V3 DSA/SHA1 Signature、鍵 ID xxxxxxxx: NOKEY
libzip-last-1.0.1-1.el7.remi.x86_64.rpm の公開鍵がインストールされていません
(1/8): libzip-last-1.0.1-1.el7.remi.x86_64.rpm                                                   |  43 kB  00:00:00
(2/8): php56-php-pecl-zip-1.13.0-1.el7.remi.x86_64.rpm                                           |  42 kB  00:00:00
(3/8): php56-runtime-2.1-1.el7.remi.x86_64.rpm                                                   | 1.1 MB  00:00:00
(4/8): scl-utils-20130529-17.el7_1.x86_64.rpm                                                    |  24 kB  00:00:00
(5/8): php56-php-pecl-jsonc-1.3.8-1.el7.remi.x86_64.rpm                                          |  45 kB  00:00:01
(6/8): php56-php-5.6.13-1.el7.remi.x86_64.rpm                                                    | 1.3 MB  00:00:04
(7/8): php56-php-common-5.6.13-1.el7.remi.x86_64.rpm                                             | 685 kB  00:00:06
(8/8): php56-php-cli-5.6.13-1.el7.remi.x86_64.rpm                                                | 2.6 MB  00:00:09
------------------------------------------------------------------------------------------------------------------------
合計                                                                                    635 kB/s | 5.8 MB  00:00:09
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi から鍵を取得中です。
Importing GPG key 0xXXXXXXXX:
 Userid     : "Remi Collet <RPMS@FamilleCollet.com>"
 Fingerprint: xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
 Package    : remi-release-7.1-2.el7.remi.noarch (installed)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-remi
上記の処理を行います。よろしいでしょうか? [y/N]

これはyumコマンドでパッケージのインストールを行う際には、GPG署名というものを使用して、パッケージの検証を行うようになっているのですが、その際に必要なキーが存在しないため、インポートしてよいか確認するメッセージになります。

キーのインポートを行うので、「y」を入力します。

尚、インポートされているキーは、以下のコマンドで確認できます。

# rpm -qa gpg-pubkey*
gpg-pubkey-xxxxxxxx-xxxxxxxx
gpg-pubkey-xxxxxxxx-xxxxxxxx

キーは、CentOSのリポジトリのもの、Remiのリポジトリのもの等、使用しているリポジトリ別に管理されます。

【補足】マルチバイト文字列関数を使用する場合

マルチバイト文字列関数(mb_〜)を使用するには、mbstringモジュールが別途必要となります。

以下のコマンドを実行して、mbstringモジュールのインストールを行います。

# yum --enablerepo=remi,epel install php56-php-mbstring

【補足】PDOでMySQLに接続する場合

PDOでMySQLに接続するには、pdoモジュール、mysqlndモジュールが別途必要となります。

以下のコマンドを実行して、pdoモジュール、mysqlndモジュールのインストールを行います。

# yum --enablerepo=remi,epel install php56-php-pdo php56-php-mysqlnd

PHP5.5のインストール

上記のPHP5.6のインストールと同様に、RemiのリポジトリからPHP5.5をインストールすることができます。

PHP5.5のインストール

以下のコマンドを実行して、PHP5.5のインストールを行うことができます。

# yum --enablerepo=remi,epel install php55-php

【補足】マルチバイト文字列関数を使用する場合

マルチバイト文字列関数(mb_〜)を使用するには、mbstringモジュールが別途必要となります。

以下のコマンドを実行して、mbstringモジュールのインストールを行います。

# yum --enablerepo=remi,epel install php55-php-mbstring

※マルチバイト文字列関数を使用する際は、php.iniで「mbstring.internal_encoding」を設定する必要があります。PHP5.6では、この設定は非推奨(不要)になっています。

【補足】PDOでMySQLに接続する場合

PDOでMySQLに接続するには、pdoモジュール、mysqlndモジュールが別途必要となります。

以下のコマンドを実行して、pdoモジュール、mysqlndモジュールのインストールを行います。

# yum --enablerepo=remi,epel install php55-php-pdo php55-php-mysqlnd

yumリポジトリにRemiを追加については、以上です。