yvCommentエクステンションをインストールしようとしたところ、Joomla!のバージョンが古いとの警告が出たため、Joomla! をアップデートすることにしました。
Joomla! のアップデートはそれほど手間のかかる作業ではありません。大まかには以下の手順で作業を進めます。
- 最新版の確認
- アップデートファイルの取得
- 更新ファイルの確認
- バックアップ
- アップデート
- 動作確認
最新版の確認
まずはJoomla!本家サイトのダウンロードページで最新版のバージョンを確認します。2008年10月1日時点では 1.5.7 が最新バージョンとなっています。
アップデートファイルの取得
ここのサイトでは、アップデート前は 1.5.6 が動作していますので、1.5.6 to 1.5.7 Upgrade Package をダウンロードすることになります。アップデート前のバージョンが 1.5.6 以前であれば、その下にある Download other Joomla 1.5.x packages » のリンクをクリックし、リストの中から動作中のバージョンから 1.5.7 にアップデートするためのファイルを探してください。
これ以降は、サーバーに ssh などでログインし、管理者権限で操作することを前提として手順を書いています。
wget コマンドでアップデートファイルを取得します。wget コマンドの引数には、現在動作中のバージョンから最新版にアップデートするためのファイルの URL を指定します。
[root@host ~]# wget http://globalbase.dl.sourceforge.jp/joomla/32528/Joomla_1_5_6_ja-JP_Stable.zip |
更新ファイルの確認
まずはダウンロードしたファイルを解凍します。
[root@host ~]# mkdir Joomla_1.5.6_to_1.5.7-Stable-Patch_Package [root@host ~]# cd Joomla_1.5.6_to_1.5.7-Stable-Patch_Package [root@host ~]# unzip ../Joomla_1.5.6_to_1.5.7-Stable-Patch_Package.zip |
もし、Joomla! に手を加えている場合は、以下のコマンドを実行して、インストール後(または前回のアップデート後)に手を加えたファイルをチェックするといいかもしれません。エクステンションやアップロードしたファイルなどもリストアップされますが、全ての中から探すのに比べれば少しはマシでしょう。
[root@host ~]# find /var/www/joomla -newer /var/www/joomla/configuration.php -print | grep -v '/var/www/joomla/tmp' |
このコマンドでは、インストール時に更新される configuration.php よりも新しいファイルをリストアップします。(ただし、tmp 以下は除いています)
バックアップ
Joomla! のアップデートを行う前に、万一に備えて現在の状態のバックアップを作成しておきます。Joomla! ディレクトリのバックアップと、MySQL データベースのバックアップを作成します。
Joomla! ディレクトリのバックアップは簡単です。以下のコマンドをたたけばバックアップを作成できます。
[root@host ~]# cp -R /var/www/joomla/ /backup/joomla |
MySQL データベースのバックアップもコマンドをひとつたたくだけです。以下の例では root ユーザを指定していますが、データベースにアクセスする権限があるユーザであれば問題ありません。
[root@host ~]# mysqlhotcopy (データベース名) -u root -p (パスワード) /backup/mysql |
アップデート
アップデート作業自体は単純です。解凍したファイルを、Joomla! ディレクトリに上書きするだけです。
[root@host ~]# cd /root/Joomla_1.5.6_to_1.5.7-Stable-Patch_Package [root@host ~]# /bin/cp -Rf * /var/www/joomla |
ここで、次回のアップデートのために、アップデートした日時をマークするためのファイルを作成しておきます。
[root@host ~]# touch /var/www/joomla/updatetime |
もし手を加えたファイルがあるのならば、/backup/joomla にバックアップしたファイルの中から、「更新ファイルの確認」でリストアップしたファイルと、アップデート後の /var/www/joomla 内のファイルを比較し、必要に応じてファイルを変更します。
動作確認
サードパーティのエクステンションや、手を加えたファイルが動作するかどうかを確認します。もし動作しない場合は、「動作するように自力で修正する」か「アップデートをあきらめる」のどちらかです。アップデートをあきらめるなら、バックアップしたファイルを全て書き戻します。以下のコマンドで書き戻せます。
[root@host ~]# /bin/cp -fR /backup/joomla/ /var/www/joomla |
アップデートによって新規に追加されたファイルがあるかもしれませんので、追加されたファイルをリストアップして削除した方がよいでしょう。新規に追加されたファイルは、以下のコマンドでリストアップできます。
[root@host ~]# diff -qr /var/www/joomla /backup/joomla | grep 'Only in /var/www/joomla' |


