kakiro-webカキローウェブ

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

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

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

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

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

yumリポジトリにEPELを追加

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

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

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

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

※ダウンロード元のURLは、IUSの公式サイトから遷移できるCentOS7用のIUSのダウンロードページにリンクがあります。

※ここで紹介している手順のバージョンより新しいものがリリースされている場合は、バージョンを新しいものに読み替えて頂くか、アーカイブページから同じバージョンのものをダウンロードすることも可能かと思います。

$ wget https://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-14.ius.centos7.noarch.rpm

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

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

# rpm -Uvh ius-release-1.0-14.ius.centos7.noarch.rpm

デフォルトの設定では、yumコマンドの実行時にIUSのリポジトリは、自動的に使用されるようになっています。明示的に使用されるようにしたい場合は、インストールされたIUSのリポジトリの設定ファイル「/etc/yum.repos.d/ius.repo」を、以下のように編集します。

[ius]
:(略)
enabled=1
↓変更
enabled=0

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

# yum --enablerepo=ius list

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

# yum --enablerepo=ius,epel list

PHP5.6のインストール

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

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

PHP5.6のインストール

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

# yum --enablerepo=ius,epel install php56u

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

(1/8): libxslt-1.1.28-5.el7.x86_64.rpm                                                                   | 242 kB  00:00:00
warning: /var/cache/yum/x86_64/7/ius/packages/php56u-common-5.6.12-1.ius.centos7.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID xxxxxxxx: NOKEY
php56u-common-5.6.12-1.ius.centos7.x86_64.rpm の公開鍵がインストールされていません
(2/8): php56u-common-5.6.12-1.ius.centos7.x86_64.rpm                                                     | 1.2 MB  00:00:03
(3/8): php56u-process-5.6.12-1.ius.centos7.x86_64.rpm                                                    |  81 kB  00:00:01
(4/8): php56u-pear-1.9.5-1.ius.centos7.noarch.rpm                                                        | 358 kB  00:00:05
(5/8): php56u-pecl-jsonc-1.3.7-1.ius.centos7.x86_64.rpm                                                  |  52 kB  00:00:05
(6/8): php56u-xml-5.6.12-1.ius.centos7.x86_64.rpm                                                        | 253 kB  00:00:01
(7/8): php56u-5.6.12-1.ius.centos7.x86_64.rpm                                                            | 2.6 MB  00:00:06
(8/8): php56u-cli-5.6.12-1.ius.centos7.x86_64.rpm                                                        | 4.0 MB  00:00:10
--------------------------------------------------------------------------------------------------------------------------------
合計                                                                                            831 kB/s | 8.7 MB  00:00:10
file:///etc/pki/rpm-gpg/IUS-COMMUNITY-GPG-KEY から鍵を取得中です。
Importing GPG key 0xXXXXXXXX:
 Userid     : "IUS Community Project <coredev@iuscommunity.org>"
 Fingerprint: xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
 Package    : ius-release-1.0-14.ius.centos7.noarch (installed)
 From       : /etc/pki/rpm-gpg/IUS-COMMUNITY-GPG-KEY
上記の処理を行います。よろしいでしょうか? [y/N]

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

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

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

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

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

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

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

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

# yum --enablerepo=ius,epel install php56u-mbstring

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

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

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

# yum --enablerepo=ius,epel install php56u-pdo php56u-mysqlnd

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