この文書は gate-toroku-system のアップデート手順を説明する。アップデートとはすでに gate-toroku-system がインストールされているホストに より新しいバージョンの gate-toroku-system をインストールしなおすことである。
文中でインストールの手引きに触れている部分 では参照しながら作業されたい。
[ep local] 北大理・EP サーバに固有の事情はインデントした段落に 緑の文字で記した。たとえばこの段落がそうである。
以下では Debian GNU/Linux 2.1 以上 を使っていることを仮定する。他の OS を用いる場合はパス情報などの書き換えが必要であるので注意されたい。
パッケージを展開する場所はどこでもよいが、インストールのときと同様 /home/gate 以下がよいであろう (以下 /home/gate を使っていると仮定する)。まずはそこに行っていただきたい。
$ cd /home/gate
[2.1] /etc/gate.conf のバックアップ
インストーラは /etc/gate.conf を上書きしないように設計されているが、 作業ミスによって失われる場合に備え、 設定ファイル /etc/gate.conf をバックアップしておくこと。たとえば 1999 年 9月 1 日に インストールした版が存在する場合は
$ cp /etc/gate.conf gate.conf.1999-09-01
[2.2] パッケージ展開場所の整理
すでに展開された gate-toroku-system ディレクトリが存在する場合は適当な名前に改名しておこう。たとえば 1999 年 9 月 1 日にインストールした版が存在する場合は
$ mv gate-toroku-system gate-toroku-sytem-1999-09-01とでもすればよい。過去に何度もアップデートしている場合は, あんまり古いものをたくさん保存しておく必要はない。
[3.1] パッケージの取得
gate-toroku-system は gate-toroku-system.tar.gz という(あるいは類似の)ファイル名の gzip で圧縮された tar アーカイブで提供される。このファイルは現在のところ 公開されていないが、アップデートを行うからにはファイルは 入手されているのであろうから入手法については省略する。
[ep local] www.ep.sci.hokudai.ac.jp において /home/gate/gate-toroku-system.tar.gz を探索されたい。
[3.2] パッケージの展開
gate-toroku-system ディレクトリが存在しないことを確認してパッケージを展開する。
$ ls gate-toroku-system
gate-toroku-system: no such file or directory.
$ tar xvfz gate-toroku-system.tar.gzを発行する。GNU tar がインストールされていない場合は GNU zip と tar が必要である。
$ zcat gate-toroku-system.tar.gz | tar xvf -いずれの方式でもカレントディレクトリに gate-toroku-system ディレクトリが作成され、 その中にファイルが展開される。 以後の作業は主にこの gate-toroku-system ディレクトリで行われるので そこに移動しておこう。
$ cd /home/gate/gate-toroku-system( 以後の作業はこのディレクトリから行うことを仮定しており, コマンドも相対パスで書かれているものがあるので注意 )
[4.1] 登録サーバの場合
パッケージのインストール先、動作詳細などすべての設定は include/gate.conf ファイルを編集することで 行われているのであった。 このファイルは /etc/gate.conf にインストールされているはずである。
gate-toroku-system の新しい版では (そんな必要がないことを祈っているが期待しないほうがよい)gate.conf の書式が変わることがあるかもしれない。
その場合は既存の /etc/gate.conf ファイルを見ながら 新しい版の include/gate.conf ファイルを編集する. 変更すべき点のリストは 登録サーバへのインストールの手引き の 3. パッケージの設定 ( gate.conf の編集) に列挙されている.
[gate 開発者へ] gate.conf の書式を変更する場合には、 インストールの手引きにもその変更を反映させるようお願いしたい。
なお, include/gate.conf と /etc/gate.conf との違いを 調べるには以下の diff コマンドが便利である.
$ diff -c /etc/gate.conf include/gate.conf | less[ep local] EP サーバにおいてはたぶん何も変更しなくてよいはずである。
またテスト運用をしないでいきなり本格運用を開始する場合は include/gate.conf ファイルの $DEBUG_CONFIG を 0 に変えることによって本格運用が開始される。 include/gate.conf ファイルに以下のような行を発見し、
$DEBUG_CONFIG = 1; # 0 にすると本気モード
以下のように書き換えよ。
$DEBUG_CONFIG = 0; # 0 にすると本気モード
[4.2] その他のサーバの場合
gate.conf の書式は複数のホストでデータベースを共有する場合、 まったく同じファイルを用いることができるように設計されている。 したがって、登録サーバと同じバージョンの gate-toroku-system にアップデートする際には、 登録サーバの gate.conf をコピー すればよい。
( 逆を言うと、gate システムのバージョンが異なる場合には、 同じ書式の gate.conf を使用できない可能性がある。 このため、 アップデートはまず登録サーバから行うこと )
[ep local] EP サーバでは orange を登録サーバに使用しているので、 以下のようにして include/gate.conf に 登録サーバの /etc/gate.conf をコピーしてくればよい。
$ scp orange:/etc/gate.conf ./include/gate.conf
(少なくとも現段階では)、アップデートの際には古い gate-toroku-system を 新しい gate-toroku-system で上書きするので、 インストールと同じ手順をふむ。
[5.1] gate.conf の上書き
まずは, 先ほど編集(上書き)した include/gate.conf を /etc/gate.conf に上書きする. (以下の「# make install」では /etc/gate.conf は上書きされない.)
# cp include/gate.conf /etc/gate.conf
[5.2] Config.mk の生成
gate.conf の設定内容を Makefile へ伝えるために config.pl を走らせて Config.mk を作成する。
$ cd /home/gate/gate-toroku-system
$ perl ./config.pl
[5.3] make によるコンパイル
make によるコンパイルを行う. 具体的には今のところ, roff 形式のファイル (man 用の書式のファイル) から htroff を用いて html ファイルを生成している.
$ make
[5.4] インストール
最後に、スーパーユーザの権限で以下のコマンドを実行する。
$ su (sudo を用いても良い)
# cd /home/gate/gate-toroku-system
# make installテストはしなくてもいいと思うけど、 心配だったらインストールの手引きと同じ手順でやってね。