majordomo install
2001.9.30
メーリングリストとして有名なmajordomoをインストールして使ってみたくなったが、相当てこずったので、majordomoのインストールから使いはじめまで公開することとした。これを機に私のホームページKilinにWindowsとLinuxのHOWTOシリーズを公開していくこととした。
(環境)Turbo Linux 4.0, majordomo 1.94.5
majordomoを動かすためのユーザーの追加
rootになる。
$ su
Password:
majordomoを動かすためのuserをつくる。所属groupはdaemon。user名は何でも可。ここではmlistとする。
# useradd -g daemon mlist
ユーザーmlistのパスワードを設定。
# passwd mlist
ユーザーmlistでlogin。以下では#はrootでの操作、$はmlistでの操作。
# exit
$ su mlist
ホームディレクトリの属性を変更。
$ cd
$ cd ..
$ chmod 755 mlist
ホームディレクトリにlistsディレクトリを作る。
$ cd
$ mkdir lists
majordomo-1.94.5.tar.Zの展開
majordomo-1.94.5.tar.Z,(コピー)をmlistのホームディレクトリへコピー。
$ ftp greatcircle.com
Name (greatcircle.com:mlist): anonymous
Password:
ftp> cd pub/majordomo/1.94.5
ftp> binary
ftp> get majordomo-1.94.5.tar.Z
ftp> quit
majordomo-1.94.5.tar.Zを展開。
$ tar zxvf majordomo-1.94.5.tar.Z
展開したディレクトリへ移動。
$ cd majordomo-1.94.5
Makefileの修正
rootになってvipwでmlistのuser idとgroup idを確認。
$ su
Password:
# vipw
ml:x:530:2::/home/mlist:/bin/bash
# exit
perlのpathを確認。
$ whereis perl
perl: /usr/bin/perl5.00503 /usr/bin/perl /usr/man/man1/perl.1
perlのpathを修正。
PERL = /usr/bin/perl
W_HOMEを修正。
W_HOME = /home/majordomo-$(VERSION)
manを修正。
MAN = /usr/man
W_USERとW_GROUPをmlistのuser id、group idに修正。
W_USER = 530
W_GROUP = 2
W_PATHを修正。
W_PATH = /bin:/usr/bin:/usr/local/bin
majordomo.cfの作成
sample.cfをmajordomo.cfにcp。
$ cp sample.cf majordomo.cf
majordomo.cfを修正。
$whereami = "ws.u-shizuoka-ken.ac.jp"; (majordomoを動かすhost名)
$listdir = "/home/mlist/lists"; (mailing listを置く場所)
$log = "/home/ml/Log"; (ログを置く場所)
$sendmail_command = "/usr/sbin/sendmail";
archiveする場所はdefaultでは/usr/local/mail/lists/(ML).archive。
archiveする場所をたとえば/usr/spool/archive/以下に変更するときは
$filedir = "/usr/spool/archive/";
$filedir_suffix = "";(sufixをつけない場合)
make & install
mlistで
$ install wrapper
rootで
$ su
Password:
# make install
errorが出た場合は
# make clean
してからMakefileを修正して、もう一度
# make install。
rootで
# make install-wrapper
mlistに戻る。
# exit
/home/majordomo-1.94.5に移動。
$ cd /home/majordomo-1.94.5
sequencerをコピー。
$ cp Tools/sequencer .
sendmail用aliasesファイルの作成
ユーザーmlistのホームディレクトリへsendmail用aliasesファイルをコピー。
$ cd
$ cp majordomo-1.94.5.tar.Z/majordomo.aliases aliases
aliasesファイルを編集。
majordomo: "|/home/majordomo-1.94.5/wrapper majordomo"
majordomo-owner: mlist
owner-majordomo: mlist
rootでsymbolic linkを張る。
$ su
Password:
# rm /etc/mail/majordomo
# ln -s /home/mlist/aliases /etc/mail/majordomo
# exit
aliasesの変更を有効にする。
$ newaliases
sendmail.cfの調整
rootで/etc/sendmail.cfを修正。
# override file safeties - setting this option compromises system security
# need to set this now for the sake of class files
#O DontBlameSendmail=safe
O DontBlameSendmail=GroupWritableAliasFile
O DontBlameSendmail=IncludeFileInGroupWritableDirPath
動作テスト
以上でインストール終了。もうrootになる必要はない。
majordomo@ws.u-shizuoka-ken.ac.jp宛てに本文がhelpのメールを出して動作を確認。
このようなメールが返ってくればOK。
メーリングリストのテスト
メーリングリストを作って動作を確認する。ここではtestという名前のメーリングリストを作る。
mlistのホームディレクトリへ移動。
$ cd
aliasesファイルを編集。
test: "|/usr/test/majordomo-1.94.5/wrapper resend -l test test-list"
test-list: :include:/home/mlist/lists/test
owner-test: mlist
test-owner: mlist
test-request: mlist
aliasesの変更を有効にする。
$ newaliases
listsへ移動。
$ cd lists
メーリングリストと同じ名前のファイルtestをlistsのなかにつくり、メーリングリストのメンバーのメールアドレスを改行で区切って書き並べる。パーミッションは以下のようであればよい。普通にviでつくれば(ftpで転送すれば)このようになる。
$ ls -l test
-rw-r--r-- 1 mlist daemon 0 Sep 30 10:40 test
test@ws.u-shizuoka-ken.ac.jp宛てにメールを出して動作を確認。
メーリングリストのカスタマイズ
メーリングリストの調整。
件名に[リスト名:連番]をつける。
容量制限の緩和。
返信先をメーリングリストにする。
以下の作業は全てユーザーmlistでやる。
ホームディレクトリにあるaliasesファイルを編集。
#test: "|/usr/test/majordomo-1.94.5/wrapper resend -l test test-list"
test: "|/home/majordomo-1.94.5/wrapper sequencer -l test -n -h ws.u-shizuoka-ken.ac.jp test-list"
aliasesの変更を有効にする。
$ newaliases
listsディレクトリにできたtest.configを編集。
件名に[リスト名:連番]をつける。
subject_prefix = [TEST:$SEQNUM]
容量制限の緩和。
maxlength = 40000000
返信先をメーリングリストにする。
reply_to = test@ws.u-shizuoka-ken.ac.jp
test@ws.u-shizuoka-ken.ac.jp宛てにメールを出して動作を確認。
参考
Majordomoのホームページ (http://www.greatcircle.com/majordomo/)
How to use majordomo (http://www.y-min.or.jp/~nob/ML/)
Majordomo+Distribute のインストール(http://www.ipc.hiroshima-u.ac.jp/hinet/admin/6.3.html)
Majordomo Install(http://www.islab.is.tsukuba.ac.jp/~koni/Koni/majordomo.html)