必要なファイルは、以下の2つです。
最初のファイルを展開し、CML-3.0-Release/ で、patch を当てます。 すると、以下のようになります。
BUGS adviceuser.SH* install.form.SH Configure* b64decode.SH* install.form.SH.orig Doc/ cmad.SH* killdt.SH HISTORY cmas.SH* makecmllist.SH* HISTORY.orig cmdpath* makecmllist.SH.orig* Makefile cmdt.SH* messages/ README cmld.SH* setadmin.SH* addml.SH* config.default addusr.SH* contrib/
Doc/ 以下に解説がありますが、README.1st にそれぞれのドキュメントの 概説があります。インストール方法は、Doc/install に書かれていますが、 Configure スクリプトによってほとんど自動化されています。
% ./Configure
上のように Configure スクリプトを動かすと、ファイルの位置を検査しつつ、 必要な場合には質問がされます。ファイルはほとんどの場合、そのままリターン を押して、デフォルトのままで良いでしょう。 注意するのは、ドメイン名です。CML が自動生成するドメイン名は実は FQDN です。従って、内部配送方式ではドメイン名のみを答えます。
Enter domain name. [lxa1.summer1.wakhok.ac.jp] summer1.wakhok.ac.jp
次に、cmas に対しては y を答えておき、その後、 インストールディレクトリを聞いてきますので、これは間違えずに入力して 下さい。
Enter install directory. [/usr/local/etc/cml] /pub/mail/cml
但し、上記の例では、/pub/mail にユーザが書き込み可能でないといけません。 特に、CML では、root ではなく、ユーザの権限でプログラムを動かしますので、 注意して下さい。spool directory はそのままリターンを押して構いません。 最後に、install するかどうかを聞いてきますが、デフォルトは no です。 もし、上記の install directory などを打ち間違えた場合には、そのまま リターンを押して下さい。実際のインストールは、make install でも行う 事が出来、Makefile は単に Install.sh を呼び出すだけです。従って、ディレクトリ 名などを間違えた場合には、Install.sh を書き換えれば良いでしょう。
書き換えで関係する Install.sh の中身は最初の17行だけです。
#!/bin/sh # Common ML Tools Install # Copyright 1993,1994,1995,1996,1997 (C) SAITOH-Ely-Yasuhiro. # All rights reserved. # ############################################################## SENDMAIL=/usr/lib/sendmail DOMAIN=summer1.wakhok.ac.jp DRIVER=/pub/mail/cml MSPOOL=/pub/mail/cml CMAS=1 DATE=1 JCMD=1 AWK=/usr/bin/awk GREP=/usr/bin/grep ############################################################### PATH=/pub/mail/cml:/usr/bin:
インストールが終わると最後に以下のように出てきます。
***** Attetntion ***** If you can edit /etc/rc or other system initial files, add these lines before starting sendmail. find /pub/mail/cml -name .LOCK.lock -a -exec rm -f {} \; find /pub/mail/cml -name .seq.lock -a -exec rm -f {} \; find /pub/mail/cml -name .digest.lock -a -exec rm -f {} \; find /pub/mail/cml -name cmdt.pid -a -exec rm -f {} \;
CML では、動作中に幾つかのロックファイルを作成します。従って、もし、 これらのロックが存在している時にシステムが落ちると、ロックがかかった ままになり CML が動かなくなります。そこで、システムが立ち上がり、 sendmail が動く前にこれらのロックファイルを消去する必要があります。 Solaris では、/etc/rc2.d/S88sendmail から sendmail を立ち上げているので、 /etc/rc2.d/S88cml というファイルを作成し、最後の4行を以下のように 入れておけば良いでしょう。
PATH=/usr/bin:/bin if [ -d /pub/mail/cml ]; then find /pub/mail/cml -name .LOCK.lock -a -exec rm -f {} \; find /pub/mail/cml -name .seq.lock -a -exec rm -f {} \; find /pub/mail/cml -name .digest.lock -a -exec rm -f {} \; find /pub/mail/cml -name cmdt.pid -a -exec rm -f {} \; fi
この作業は勿論 root で行って下さい。