家族所有車のディーラーに用事があったので、自分の車(別のディーラーで購入)で行きました。「買い替えですか?」「何年乗られているんですか?」と声をかけられました。・・・この4月に新車で購入した車だという事は隠しておきました。洗車って大事ですね@msmです。
先日、PHPの開発チームよりPHP4のサポートが2007年末で終了するとのアナウンスがあり、PHP5への移行が薦められていました。
しかし、TLASやBlueQuartzなどの管理ツールはPHP5環境での動作保障がされておらず、PHPのアップデートをした場合に管理ツールが動かなくなるといったトラブルが報告されています。
今回はCentOS 4.5 + PHP5の環境で、BlueQuartzを動作させる実験をしてみます。レシピは以下のような感じで進めて行きたいと思います。
- 管理GUIで使用しているphp4モジュールのバックアップ
- php4のアンインストールとphp5のインストール
- 管理GUIで使用させるphp4モジュールの設定
- php5からphp4への切り戻し(おまけ)
なお、今回の実験で結果的にはPHP5環境でBlueQuartzを動作させることに成功していますが細かい動作確認まではしておりません。以下の作業は自己責任でお願いします。
1. 管理GUIで使用しているphp4モジュールのバックアップ
PHP5をインストールすると消えてしまうファイル(libphp4.so)が後で必要となるのでコピーをとっておく。
cp -a /etc/admserv/modules/libphp4.so /tmp/
2. php4のアンインストールとphp5のインストール
CentOSのデフォルトはPHP4.3であり、PHP5.1がplus(サポート外のパッケージ)にて提供されています。以下の方法でplusを有効にします。
rootアカウントにて、
vi /etc/yum.repos.d/CentOS-Base.repo
とし、[centosplus]の欄にある
enabled=0 ↓ enabled=1
とします。
その上で、yumコマンドを利用してPHP5.1をインストールします。
yum install php
この際、新規にインストールされるパッケージ、アップデートされるパッケージ、アンインストールされるパッケージが出てきますので、パッケージ名のメモをとる事をお勧めします。
【メモ】 Updating: php i386 5.1.6-3.el4s1.7 centosplus 1.1 M Installing for dependencies: php-cli i386 5.1.6-3.el4s1.7 centosplus 2.0 M php-common i386 5.1.6-3.el4s1.7 centosplus 135 k Updating for dependencies: php-mbstring i386 5.1.6-3.el4s1.7 centosplus 969 k php-pear noarch 1:1.4.11-1.el4s1.1 centosplus 345 k
3. 管理GUIで使用させるphp4モジュールの設定
phpのアップデートは完了ですが、このままではBlueQuartzは起動できないはずです。具体的には、
/etc/init.d/admserv restart
しても、
Starting admin web server: Syntax error on line 6 of /etc/admserv/conf.d/php.conf:
Cannot load /etc/admserv/modules/libphp4.so into server: /etc/admserv/modules/libphp4.so: cannot open shared object file: No such file or directory
とエラーが出て起動に失敗するはずです。
ここで先ほどコピーしておいたlibphp4.soを元の位置にコピーします。
cp -a /tmp/libphp4.so /etc/admserv/modules/
続いてadmservを再起動。
/etc/init.d/admserv restart
するとadmserv(BlueQuartzのフロントエンド)が正常起動するはずなので、BlueQuartzが正常に動いていることを確認します。
忘れずに、CentOS plusを無効にします。
現在のplusが有効にされている環境で、yumによるアップデートをしてしまうと、かなりの数のパッケージがplus(サポート外)の物にアップデートされてしまいます。
vi /etc/yum.repos.d/CentOS-Base.repo
とし、[centosplus]の欄にある
enabled=1 ↓ enabled=0
に戻します。
4. php5からphp4への切り戻し(おまけ)
念のためにPHP4環境に戻す方法も書いておきます。
新規にインストールされたパッケージと、アップデートされたパッケージを以下のコマンドでアンインストールします。nodepsにて依存性を無視する事を忘れないでください。
rpm -e --nodeps php php-cli php-common php-mbstring php-pear
続いて、アップデートされたパッケージと、アンインストールされたパッケージをインストールします。
yum install php php-mbstring php-pear
/etc/init.d/admserv restart
これで元の状態に戻ったはずです。


