Majordomo Configuration

1.メーリングリスト
 LinuxでWWWサーバー、メールサーバーが稼働すればその運用を充実させたいと願うのは当然の事と言える。たとえこれがイントラネットであったとしても、利用価値は想像を超え、その効果もまた大きい。例えばPC50台程度のLAN環境で実現するとしよう。50台の端末へ50台のクライアントがいちいちメッセージを送信していたのでは大変である。同一部署内に限定されるものは労力も少ないと言えるだろうが、例えば総務部や人事部が文書を発信する都度カーボンコピーメールを配送していたのでは大変である。もちろん受取人からの返信も手間がかかると言うもの。
 そう言う意味も含めて、「メーリングリスト」の効果は大きいと感じる。
 今では世界中で色んなテーマのメーリングリストが稼働している。もちろんそのプログラムも多種多様だと考える。ここでは比較的名前の知られている[majordomo]を扱う事にしよう。
 このドキュメントを作成するにあたって、参照させていただいたサイトは以下の通りである。
http://isw.main.eng.hokudai.ac.jp/~yama/
http://lips.is.kochi-u.ac.jp/Dormodomo/
http://www.y-min.or.jp/~nob/
http://www.organnova.com/
 リンクの確認が完了しておりませんのでアンカーは入れておりません。

2.majordomoインストール
 私が利用させてもらったmajordomoは[1.94.4]です。03/03/2000時点では[1.94.5]がリリースされております。[1.94.4]からの差分もあるようです。
入手先はftp://ftp.greatcircle.com/pub/majordomo/

 まず、majordomo用のアカウントを登録します。他のアカウントと重複しないように、2000番程度を選択すると良いでしょう。
[root@server /root]# vipw
bash: vipw: command not found
 ここで vipw が見つからない場合、locateを使います。
[root@server /root]# locate vipw
/usr/man/man8/vipw.8
/usr/sbin/vipw
[root@server /root]#

 居場所がみつかりました。

[root@server /root]# /usr/sbin/vipw
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:
--------------------------------------
gdm:x:42:42::/home/gdm:/bin/bash
xfs:x:100:233:X Font Server:/etc/X11/fs:/bin/false
"/etc/ptmp" 24 lines, 1007 characters
 [i]を押して挿入モードへ移り、ユーザーを登録します。
majordom:x:2000:2000::0:0:Majordomo:/usr/local/majordomo:
:w
:q

 続けてグループ登録します。
[root@server /root]# vi /etc/group
majordom:x:2000:daemon,majordom,author
:w
:q
 [majordom]と登録されているのは「アカウント名の8文字制限」の影響です。

 ディレクトリを作成し、パーミッションを設定します。
[root@server /root]# mkdir /usr/local/majordomo
[root@server /root]# chown majordom /usr/local/majordomo
[root@server /root]# chgrp majordom /usr/local/majordomo
[root@server /root]# chmod 755 /usr/local/majordomo

 では入手したファイルを展開。ここでは作業用に用意した /tmp に /majordomo を作成し展開します。
[root@server /root]# cd /tmp
[root@server /tmp]# mkdir majordomo
[root@server /tmp]# cd majordomo
[root@server /majordomo]# tar zxvf /tmp/majordomo-1.94.4.tar.Z -C /tmp/majordomo

 Makefileの修正
[root@server /majordomo]# cd /majordomo-1.94.4
[root@server /majordomo-1.94.4]# vi Makefile
PERL = /usr/local/bin/perl
 ←Perl5へのパスを指定します。
CC = cc ←コンパイラの指定。gccを使う場合は gcc にする。
W_HOME = /usr/local/majordomo-$ ←majordomoのホームディレクトリ
W_USER = 2000
W_GROUP = 2000
W_PATH = /bin:/usr/bin:/usr/local/bin
MAN = /usr/share/man
 WRAPPER_OWNER,WRAPPER_GROUP,WRAPPER_MODEについてはdefaultでPOSIXの場合となっています。FreeBSD,LinuxなどはPOSIX準拠。


○[POSIX]とは?
POSIX.1 (IEEE 1003.1-1990)
POSIX.1 (the Portable Operating System Interface for Computer Environments) は, IEEE が定めたシステムコールやシグナル ハンドリングのようなユーティリティの システムレベルの APIです. ISO, JIS の規格にもなっています

3.majordomo設定
 majordomo設定ファイル[majordomo.cf]の作成
sample.cfと言うものが用意されているので、コピーし修正します。
[root@server /majordomo-1.94.4]# cp sample.cf majordomo.cf
[root@server /majordomo-1.94.4]# vi majordomo.cf
--------------------------------------
$whereami = "we-shall.com";
 ←majordomoを動作させるhost名
$listdir = "/usr/local/majordomo/lists"; ←mailing listを置く場所
$sendmail_command = "/usr/sbin/sendmail";

 make&install
[root@server /majordomo-1.94.4]# make install
[root@server /majordomo-1.94.4]# make install-wrapper
 途中でエラーが出た場合は、make clean してからMakefileを修正して、もう一度make install
 symbolic linkを張る
[root@server /majordomo-1.94.4]# ln -s /usr/local/majordom-1.94.4 /usr/local/majordomo
[root@server /majordomo-1.94.4]# ln -s /usr/sbin/sendmail /usr/lib/sendmail
 directoryを作成
[root@server /majordomo-1.94.4]# mkdir /usr/local/majordomo
[root@server /majordomo-1.94.4]# mkdir /usr/local/majordomo/lists
[root@server /majordomo-1.94.4]# chown majordom /usr/local/majordomo/lists
[root@server /majordomo-1.94.4]# chgrp majordom /usr/local/majordomo/lists
 installのテスト
[root@server /majordomo-1.94.4]# cd /usr/local/majordomo-1.94.4
[root@server /majordomo-1.94.4]# ./wrapper config-test
 ここでエラーが出ればその原因を把握します。Perl4では動作しないようです。Perlを確認します。
 また必要なスクリプトが存在しないなど、メッセージを正確に把握しましょう。
 majordomoの作業ディレクトリ
[root@server /majordomo-1.94.4]# mkdir /usr/tmp
[root@server /majordomo-1.94.4]# chown majordom /usr/tmp
[root@server /majordomo-1.94.4]# chgrp majordom /usr/tmp
[root@server /majordomo-1.94.4]# chmod 777 /usr/tmp
 /etc/aliasesの修正
[root@server /majordomo-1.94.4]# cd /
[root@server /]# vi /etc/aliases
#
# @(#)aliases 8.2 (Berkeley) 3/5/94
#
# Aliases in this file will NOT be expanded in the header from
# Mail, but WILL be visible over networks or from /bin/mail.
#
# >>>>>>>>>> The program "newaliases" must be run after
# >> NOTE >> this file is updated for any changes to
# >>>>>>>>>> show through to sendmail.
#
# Basic system aliases -- these MUST be present.
MAILER-DAEMON: postmaster
postmaster: root
--------------------------------------
 以下を追加します。
owner-owner: a_nakayama
owner-majordomo: majordomo-owner
majordomo: "| /usr/local/majordomo-1.94.4/wrapper majordomo"
majordom: majordomo
majordomo-owner: a_nakayama@we-shall.com
:w
:q
 newaliasesします
[root@server /]# newaliases
 ここまでで majordomo のインストールは終了です。

4.majordomo動作確認
majordomo宛にメールを出して動作を確認します。
[root@server /]# mail -v majordomo
Subject:
lists
 ←ここで終了させるため、[Control]と[D]を押します。
Cc:
majordomo... aliased to "| /usr/local/majordomo-1.94.4/wrapper majordomo"
"| /usr/local/majordomo-1.94.4/wrapper majordomo" ... Connecting to prog...
"| /usr/local/majordomo-1.94.4/wrapper majordomo" ... Sent
[root@server /]#
 mailが届きます。
[root@server /]#
You have mail in /var/spool/mail/a_nakayama
[root@server /]# mail
Mail version 8.1 6/6/93. Type ? for help.
"/var/spool/mail/a_nakayama": 1 message 1 new
>N 1 Majordomo@we-shall Sat Mar 4 13:54 23/703 "Majordomo results"
&
Message 1:
From Majordomo-Owner@we-shall.com Sat Mar 4 13:54:01 2000

>From bin Sat Mar 4 13:54:01 2000
Received: (from majordom@localhost)
by we-shall.com (8.9.3/3.7Wpl2/COCOA1.00) id NAA11629;
Sat, 4 Mar 2000 13:54:01 +0900
Date: Sat, 4 Mar 2000 13:54:01 +0900
Message-Id: <200003040454.NAA11629@we-shall.com>
To: root@we-shall.com
From: Majordomo@we-shall.com
Subject: Majordomo results
Reply-To: Majordomo@we-shall.com

--

>>>> lists
Majordomo@we-shall.com serves the following lists:

souji

Use the 'info ' command to get more information
about a specific list.
>>>>

& Saved 1 message in mbox
 上記ではすでに[souji]と言うMLが稼働しているため、返答が正常に返って来ていますが通常は空行が返されます。

 以上でインストールから環境設定、動作確認までが終了です。では実際にメーリングリストを作成してみましょう。
メーリングリスト作成




トップへ戻る

04/March/2000