ことうらシステムの一部サーバーでowncloudを運用しているのですが、本日(2015/2/12時点)で8.0.0がリリースされておりました。
owncloud自体は外部とのファイル共有程度にしか使っていないので、その更新内容なんかはどうでもいいのですが、『yum upadte』に乗っかってくるのがうっとおしいので、『適当に更新するか・・・』と実行してみるも、どうやらPHP5.4以上でないと更新すらできないらしいではないですか;;
そんなこんなで、めんどくさいのでやりたくなかったPHP5.3.x→PHP5.4.xへの更新を半ば強制的にやるはめになったので、念のための作業メモです。
1.PHP5.4x系のモジュール取得用にepelとremiとrpmforgeレポジトリを追加。
1 2 3 | rpm -ivh http: //dl .fedoraproject.org /pub/epel/6/x86_64/epel-release-6-8 .noarch.rpm rpm -ivh http: //rpms .famillecollet.com /enterprise/remi-release-6 .rpm rpm -ivh http: //pkgs .repoforge.org /rpmforge-release/rpmforge-release-0 .5.3-1.el6.rf.x86_64.rpm |
※上記レポジトリがインストール済みの場合は不要
2.各レポジトリの設定ファイルでデフォルト設定を有効化(今後のyum updateを考慮)
enabled=0と書いてあるところをenabled=1に書き換える。
※システム運用のやり方によっては、ここは逆に無効化でもOK
1 2 3 | vim /etc/yum .repos.d /remi .repo vim /etc/yum .repos.d /epel .repo vim /etc/yum .repos.d /rpmforge .repo |
3.既存のPHPの情報を確認して、削除
どんなphp関連のパッケージがインストールされているかを確認。
あとでPHP5.4.xをインストールするときのためにメモ。
1 | rpm -qa | grep php |
php本体と関連モジュールを削除
1 2 | rpm -e --nodeps php rpm -e --nodeps php-intl php-pear php-process php-devel php-mysql php-mbstring php-xml php-mcrypt |
4.PHP5.4.xをインストール
導入可能なphpの情報を確認
1 | yum info --enablerepo=epel,remi,rpmforge info php |
※remiレポジトリでPHP5.4Xがインストールできことを確認
php5.4.xのインストール
1 | yum install --enablerepo=remi php |
3項で削除したphp関連のパッケージをインストール
1 2 | yum install --enablerepo=remi php-intl php-pear php-process php-devel php-mysql php-mbstring php-xml yum install --enablerepo=epel,remi,rpmforge php-mcrypt |
5.Mysqlも5.1.xから5.5.Xに更新されるので /etc/my.cnf の記述を5.5.x用に修正してMysqlを再起動
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | ==↓修正箇所(サーバー系の下記のような設定箇所を適宜修正)↓== [修正前] [mysqld] default-character- set =utf8 set -variable=var_name=value [mysql.server] default-character- set =utf8 set -variable=var_name=value [mysqld_safe] default-character- set =utf8 set -variable=var_name=value ・ ・ ・ [mysql] default-character- set =utf8 ----------- [修正後] [mysqld] character- set -server=utf8 var_name=value [mysql.server] character- set -server=utf8 var_name=value [mysqld_safe] character- set -server=utf8 var_name=value ・ ・ ・ [mysql] default-character- set =utf8 ==↑修正箇所↑== |
6./etc/php.iniの設定を元に戻す(PHP5.3.xの時の設定に合わせて修正)
7.PHPバージョンの確認とApacheの再起動を実施
1 2 3 4 | [root@hoge ~] # php -v PHP 5.4.37 (cli) (built: Jan 21 2015 11:11:59) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies |