qmail のディレクトリを作成.
# mkdir /var/qmail
qmail ユーザ,グループを追加.
http://www.jp.qmail.org/q103/jinstall/install.ids.html に加筆:
Linux(shadow), Solaris # groupadd -g gid nofiles # useradd -g nofiles -d /var/qmail/alias -u uid alias # useradd -g nofiles -d /var/qmail -u uid qmaild # useradd -g nofiles -d /var/qmail -u uid qmaill # useradd -g nofiles -d /var/qmail -u uid qmailp # groupadd -g gid qmail # useradd -g qmail -d /var/qmail -u uid qmailq # useradd -g qmail -d /var/qmail -u uid qmailr # useradd -g qmail -d /var/qmail -u uid qmails
Debian では,このうちいくつかのユーザ,グループはインストール時に作られる.具体的には,ユーザ alias とグループ nofiles 以外は,Debian インストール時に入るようだ.そこで,ユーザ alias とグループ nofiles を追加する.これらは,システムユーザ・グループなので,gid, uid は 100-999 を使う(詳細は Debian Policy Manual - The Operating System).特に 1000-29999 は gate-system が使用するので,使わない.また,alias, qmaild, qmaill, qmailp は,グループ nofiles に属すべきとあるが,nobody に属しているため変更する.
あるいは,deluser, delgroup で Debian インストール時に作られるこれらのユーザ・グループを一旦消してからこれ(上)に従えばよい.ただし,Debian Policy Manual - The Operating System には反することになる.Debian インストール時に作られる UID/GID = 0-99 のユーザ・グループは,どの Debian システムでも同一とされているからである.
ftp://ftp.jp.qmail.org/qmail/qmail-1.03.tar.gz を取得.展開.できたディレクトリ(qmail-1.03/)に移って,コンパイル.
# make # make man # make setup # make check
まず,自ホスト名を設定する.qmail-1.03.tar.gz を展開してできたディレクトリ(qmail-1.03/)に移る.
# ./config
このスクリプトは,ホスト名を DNS 検索する.以下の内容が書き込まれる.
/var/qmail/control/defaultdomain ep.sci.hokudai.ac.jp /var/qmail/control/locals localhost blue.ep.sci.hokudai.ac.jp /var/qmail/control/me blue.ep.sci.hokudai.ac.jp /var/qmail/control/plusdomain ac.jp /var/qmail/control/rcpthosts localhost blue.ep.sci.hokudai.ac.jp
yellow によって,ep.sci.hokudai.ac.jp の MX を向けられている場合,「別ホストあてのメイルも受け取りたい」に従って作業する.
# echo ep.sci.hokudai.ac.jp >> /var/qmail/control/locals # echo ep.sci.hokudai.ac.jp >> /var/qmail/control/rcpthosts
また,「ホスト名を隠したい」に従って,ドメイン部のないアドレスにつけるホスト名を設定する.
# echo ep.sci.hokudai.ac.jp >> /var/qmail/control/defaulthost # chmod 644 /var/qmail/control/defaulthost
そのほかに,以下を設定.
# echo 10000000 >> /var/qmail/control/databytes # chmod 644 /var/qmail/control/databytes
# echo 259200 >> /var/qmail/control/queuelifetime # chmod 644 /var/qmail/control/queuelifetime
これら制御ファイルの効果は,qmail-showctl コマンド(マニュアルは http://www.jp.qmail.org/q103/jman8/qmail-showctl.html にある)で確認できる.
# cd /var/qmail/alias # echo '&kyoma@cosmos.sci.hokudai.ac.jp' > .qmail-root # echo '&root' > .qmail-postmaster # echo '&root' > .qmail-mailer-daemon # echo '&root' > .qmail-bin # echo '&root' > .qmail-daemon # echo '&root' > .qmail-games # echo '&root' > .qmail-ingres # echo '&root' > .qmail-nobody # echo '&root' > .qmail-system # echo '&root' > .qmail-toor # echo '&root' > .qmail-uucp # echo '&root' > .qmail-usenet # echo '&root' > .qmail-anonymous # echo '&root' > .qmail-mail # echo '&root' > .qmail-www # echo '&root' > .qmail-dns # echo '&root' > .qmail-ftp # echo '&root' > .qmail-news # chmod 644 .qmail-*以上により,postmaster,mailer-daemon,bin,daemon,games,ingres,nobody,system,toor,uucp,usenet,anonymous,mail,www,dns,ftp,news あてのメールは,root に転送され,root あてのメールは kyoma@cosmos.sci.hokudai.ac.jp に転送される.詳細は,dot-qmail(5).
法人ユーザ作成後は,例えば以下のように変更すべきである.
.qmail-root &blue &red &gate .qmail-postmaster &blue .qmail-mailer-daemon &blue .qmail-mail &blue .qmail-www &red .qmail-dns &yellow .qmail-ftp &green .qmail-news &white
/etc/profile の PATH= の行に,/var/qmail/bin を加える.例えば以下のようにする.
PATH="/usr/local/bin:/usr/bin:/bin:/var/qmail/bin"
export PATH
/etc/csh.cshrc には以下のように書く.
setenv PATH /usr/local/bin:/usr/bin:/bin:/var/qmail/bin
MANPATH="/usr/man:/usr/local/man:/usr/bin/man:/var/qmail/man"
export MANPATH
/etc/csh.cshrc に以下を書き加える.
setenv MANPATH /usr/man:/usr/local/man:/usr/bin/man:/var/qmail/man
MAIL="$HOME/Mailbox"
MAILDROP="$HOME/Mailbox"
export MAIL MAILDROP
/etc/csh.cshrc に以下を書き加える.
setenv MAIL $HOME/Mailbox
setenv MAILDROP $HOME/Mailbox
なお,各ユーザのホームディレクトリのパーミッションは 755 でないと,メール配送時にエラーが出るらしい.
# cp /var/qmail/boot/home /var/qmail/rc # csh -cf '/var/qmail/rc &'qmail は起動する.qmail-send, splogger qmail, qmail-lspawn, qmail-rspawn, qmail-clean を ps で確認.
ブート時に qmail を走らせるようにするため,以下のことを行う.
/etc/inittab, /etc/init.d/rc がブートスクリプトに関わっている.
/etc/init.d/qmail に,以下を書く.
csh -cf '/var/qmail/rc &'
root に実行許可を出しておく.
# chmod 755 /etc/init.d/qmail
/etc/rc[2-5].d/ の下に,これへのリンクを置く. この数字(2-5)は RUNLEVEL に対応する.2-5 はマルチユーザモード, 0 は halt,1 は single user mode, 6 は reboot に対応する.
# cd /etc/rc2.d/ # ln -s ../init.d/qmail S80qmail # ls -al S80qmail lrwxrwxrwx 1 root root 15 S80qmail -> ../init.d/qmail # cd /etc/rc3.d/ (以下同様)このリンクの名前の S に続く2桁の数字(80)が,起動のタイミングを決定する. reboot して,qmail デーモン群の起動を ps で確認.
ローカル配送テスト1:自分に送ってみる.kyoma は自分のユーザ名に変える.
% echo to: kyoma | /var/qmail/bin/qmail-inject~kyoma/Mailbox にメールが送られることを確認.
ローカル配送テスト2:存在しない宛先に送ってみる.
% echo to: nonexistent | /var/qmail/bin/qmail-injectバウンスメールが ~kyoma/Mailbox に送られることを確認.
リモート送り出しテスト:他のホスト上のアカウントへ送ってみる.
% echo to: kyoma@cosmos.sci.hokudai.ac.jp | /var/qmail/bin/qmail-inject
exim のブートスクリプトは,/etc/init.d/exim で, これに /etc/rc{2-5}.d/S20exim, /etc/rc{1,6}.d/K20exim からリンクが張られている.これを無効にする.
# chmod 000 /etc/init.d/exim # mv /etc/init.d/exim /etc/init.d/exim.bakまた,cron から呼び出される処理も無効にする. /etc/cron.daily/exim の先頭のほうに
# by TOYODA Eizi, 1999-09-22. We need not exim. if [ ! -f /etc/exim.conf ]; then exit 0 fiと書き足す.これで /etc/cron.daily/exim は無効になり,いずれ /etc/exim.conf を使って設定を行った暁には本当に動作するだろう (豊田,1999/09/22).
以下は,文献 4, 5 の通りの「sendmail 置き換え」作業.
# chmod 000 /usr/lib/sendmail # chmod 000 /usr/sbin/sendmail # mv /usr/lib/sendmail /usr/lib/sendmail.bak # mv /usr/sbin/sendmail /usr/sbin/sendmail.bak # ln -s /var/qmail/bin/sendmail /usr/lib/sendmail # ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail最後にリンクを張ったのは,「qmail の "sendmail" wrapperを MUA から使えるようにする」ため. /usr/lib/sendmail は,cron や gate-system がメールを出すのに使うので,リンクを張るのを忘れないこと.
smtp stream tcp nowait qmaild /var/qmail/bin/tcp-env
tcp-env /var/qmail/bin/qmail-smtpd
これを有効にするため,inetd に HUP を送る.
# kill -HUP xxxxxxxx: ps ax で調べた /usr/sbin/inetd のプロセス番号
$ cd checkpw-0.50/ $ make # su # make setup checkを実行.
/bin/checkapoppw ができる.
pop-3 stream tcp nowait root
/var/qmail/bin/qmail-popup qmail-popup
blue.ep.sci.hokudai.ac.jp /bin/checkapoppw
/var/qmail/bin/qmail-pop3d Maildir
余談:はじめ,この行の最初を "pop3" と書いてしまったのだが,メールクライアントから apop でメールを読もうとすると「サーバが応答しない」旨のエラーが出た.そこで,/etc/services を見ると,
pop-3 110/tcp # POP version 3
pop-3 110/udp
とあったので,/etc/inetd.conf の pop の行の最初を "pop3" から "pop-3" に書き換えたところ,うまくいった,
MAILDIR="$HOME/Maildir/" export MAILDIR
etenv MAILDIR $HOME/Maildir/をそれぞれ追加する.
各ユーザごとに,~/Maildir を作成する.
$ /var/qmail/bin/maildirmake ~/Maildir~/Maildir への配送を qmail に指示する.
$ echo ./Maildir/ > ~/.qmail $ chmod 600 ~/.qmail.qmail のパーミッションは,600 か 644.要は,実行許可が出ていないこと, オーナー以外に書き込みが許可されていないこと,が要求される.
$ echo 'APOPPASSWORD' > ~/Maildir/.password $ chmod 600 ~/Maildir/.passwordこの中身(ここでは,APOPPASSWORD)が,apop でメールを読むときの認証パスワードとなる.
blue の外のホストから,apop 対応メーラー(例.eudora-J1.3.8.8r6 for Macintosh)を用いて,apop サーバを blue に指定して,blue 上の自分のアカウントあてに届いたメールを読んでみる.
Maildir に対応させるパッチ ftp://ftp.win.ne.jp/pub/network/mail/qmail/imap4maildir-pre.tar.gz を取得・展開.
imap4maildir-pre/README に従って,パッチをあてる. 要点は以下.
$ cp imap4maildir-pre/maildir.c imap-4.6.BETA/src/osdep/unix/ $ cp imap4maildir-pre/maildir.h imap-4.6.BETA/src/osdep/unix/ 指定位置に Maildir ドライバをコピーする. $ vi imap-4.6.BETA/src/osdep/unix/Makefile 編集する.編集結果は以下.強調は追加部. ...(前略) DEFAULTDRIVERS=maildir imap nntp pop3 mh mx mbx tenex mtx mmdf unix news phile ...(中略) BINARIES=mail.o misc.o newsrc.o smanager.o osdep.o utf8.o siglocal.o \ dummy.o pseudo.o netmsg.o flstring.o fdstring.o \ rfc822.o nntp.o smtp.o imap4r1.o pop3.o \ unix.o mbox.o mbx.o mmdf.o tenex.o mtx.o news.o phile.o mh.o mx.o maildir.o ...(中略) # Dependencies ...(中略) utf8.o: mail.h misc.h osdep.h utf8.h maildir.o: mail.h misc.h osdep.h maildir.h dummy.h ...(後略) $ vi imap-4.6.BETA/src/c-client/mail.h 編集する.編集結果は以下.強調は追加部. ...(前略) /* Entry in the message cache array */ typedef struct message_cache { ...(中略) unsigned long user_flags; /* user-assignable flags */ unsigned long data1; /* needed for maildir driver */ } MESSAGECACHE; ...(後略)
続いて,imap-4.6.BETA/README に従って,コンパイルを行う.
$ cd imap-4.6.BETA/
imap-4.6.BETA/Makefile を見ると,
# The following plaintext login types are defined:
# afs AFS authentication database
# dce DCE authentication database
# md5 MD5 database (must also have md5 as an authenticator)
# nul no plaintext authentication (note: this will break some secure
# authenticators -- don't use without checking first!!)
# std system standard (typically passwd file), determined by port
PASSWDTYPE=std
とあるので,
PASSWDTYPE=md5
に書き換える.imap-4.5/docs/md5.txt には,MD5 を用いた認証について書かれている.これによれば,この認証方式はパケット盗聴に対してセキュアだそうだ.PASSWDTYPE=std としてコンパイルした場合,imap 認証にはログインに使うパスワードと同じ物が用いられる.これはアンセキュア!
$ make slx
su になって,
# cp imap-4.5/imapd/imapd /usr/local/sbin/imapd
imap2 143/tcp # Interim Mail Access Proto v2
imap2 143/udp
があることを確認.
/etc/inetd.conf に以下の一行を加える.余談:はじめ,imap-4.5/docs/BUILD に従ってプロトコル名を "imap" としていたのだが,うまく動作しなかった."imap2" に改めたのは,/etc/services にそう表記されていたため.
imap2 stream tcp nowait root /usr/local/sbin/imapd imapd
inetd に HUP を送る.
# kill -HUP xxxxxxxx: inetd のプロセス番号.
# CRAM-MD5 authentication database
# Entries are in form <user><tab><password>
# Lines starting with "#" are comments
kyoma xxxxxxxx
ユーザ名と imap 用パスワードの間は tab で区切るとされている.
# chmod 400 /etc/cram-md5.pwd
スクリプトは以下.これを,/etc/cron.daily/imappwdbg とした.パーミッションは,755.
#!/usr/bin/perl #Kyoma TAKAHASHI 1999.7.9 # 1999.10.02 #Thanks for Toyoda's help. $chmodbin = '/bin/chmod'; $imappwdb = '/etc/cram-md5.pwd'; $userpwfile = 'Maildir/.password'; system "$chmodbin 600 $imappwdb"; open(DBFILE,"> $imappwdb"); print DBFILE '# CRAM-MD5 authentication database',"\n"; print DBFILE '# Entries are in form <user><tab><password>',"\n"; print DBFILE '# Lines starting with "#" are comments',"\n"; print DBFILE "\n"; while (($user,$passwd,$uid,$gid,$quota,$comm,$gcos,$dir) = getpwent) { if ( $uid >= 1000 ) { if ( $uid <= 29999 ) { open(PWFILE,"< $dir/$userpwfile"); $pass = ''; $pass = $_ while(<PWFILE>); chop($pass); close(PWFILE); if($pass ne '') { open (GATEUS,"/usr/local/bin/gate-user-show $user |"); while () { if (/type/) { ($typeq) = /type: (.*)/; } } close (GATEUS); if ( $typeq eq 'person' ) { print DBFILE $user; print DBFILE "\t"; print DBFILE $pass; print DBFILE "\n"; }} }} } close(DBFILE); system "$chmodbin 400 $imappwdb";
より頻繁にこのデータベースを更新するために,以下を行う.
$ sudo -s # whoami root # crantab -e Edit. # crontab -l 50 8-20 * * * /etc/cron.daily/imappwdbg
パソコンのメールソフトを使ってメールを利用するユーザは多いと考えられることから,blue が smtp 要求を受けるべきは,1) blue にあるアカウント宛のメール,2) 地惑内のホスト(サブドメイン取得後なら,*.ep.sci.hokudai.ac.jp か)からのメール,であろう.
qmail の FAQ 5.4「特定のクライアントにだけリレーとして使わせたい」(文献 1)に従って作業を行う.この FAQ では,tcpserver をつかうやり方と,tcp-wrappers を使うやり方の二つが述べられている.tcpserver の導入によって,同時に多くの smtp 要求を受け付けられ,接続の記録が取れるようになる(文献 2)という利点から,tcpserver を使うことにする.
su になって,/etc/inetd.conf 中の smtp の行をコメントアウト(行頭に # を付す)して,inetd に HUP を送る.これによって,qmail-smtpd が inetd から呼び出されなくなる.
ftp://ftp.jp.qmail.org/qmail/ucspi-tcp-0.84.tar.gz を取得.展開.
付属ドキュメントに従ってインストール.
% make # make setup check
qmaild の UID,nofiles の GID を確認した上で,
# tcpserver -u xxxx -g yyyy 0 smtp /var/qmail/bin/qmail-smtpd &xxxx: qmaild の UID. yyyy: nofiles の GID.
inetd から qmail-smtpd を呼び出していたときと同様の受信テストを行い,inetd から tcpserver への移行の成否を確認する.
qmail と同様に,ブート時に起動するようにする.
/etc/init.d/tcpserver に,以下を書き(仮),root に実行許可を出す.
#!/bin/sh # # smtp /usr/local/bin/tcpserver -u xxxx -g yyyy 0 smtp /var/qmail/bin/qmail-smtpd &
/etc/rc[2-5].d/ の下に,これへのリンクを置く.
lrwxrwxrwx 1 root root 19 S80tcpserver -> ../init.d/tcpserver
133.87.52.40:allow,RELAYCLIENT=""
127.:allow,RELAYCLIENT=""
続いて,
# tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtpを実行./etc/tcp.smtp.cdb ができる.
tcpserver 起動スクリプト /etc/init.d/tcpserver の起動行に -x /etc/tcp.smtp.cdb を追加する. これは,データベースファイル /etc/tcp.smtp.cdb を参照させるための設定.
また,接続の記録を取るために,tcpserver 起動スクリプト /etc/init.d/tcpserver に -v オプションと,splogger への受け渡しを追加する.編集結果は以下となる.
/usr/local/bin/tcpserver -v -x /etc/tcp.smtp.cdb -u xxxx -g yyyy 0 smtp \ /var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger smtpd 3 &xxxx: qmaild の UID. yyyy: nofiles の GID.
blue を reboot する.tcpserver の起動を確認.
先ほど /etc/tcp.smtp に書いた IP アドレス(ここでは,133.87.52.40)を持つパソコンから,メーラー(例.eudora-J1.3.8.8r6)を使って,smtp サーバを blue に設定し,blue 以外の任意のホストにあるアカウント宛のメールを発信してみる.
/var/log/syslog に残るログは,以下のようなものとなる.確認.
Jul 8 18:06:15 blue smtpd: 931424775.300370 tcpserver: status: 1/40 Jul 8 18:06:15 blue smtpd: 931424775.301735 tcpserver: pid 185 from 133.50.133.146 Jul 8 18:06:15 blue smtpd: 931424775.326543 tcpserver: ok 185 blue.ep.sci.hokudai.ac.jp:133.87.45.26:25 skyblue.sci.hokudai.ac.jp:133.87.52.40::2064 Jul 8 18:06:15 blue smtpd: 931424775.862705 tcpserver: end 185 status 0 Jul 8 18:06:15 blue smtpd: 931424775.863054 tcpserver: status: 0/40
#!/usr/bin/perl #Kyoma TAKAHASHI 1999.08.11 # 1999.09.09 # 1999.11.09 # list-2-tcp file $add = ':allow,RELAYCLIENT=""'; $bottom = '127.'; $rulefile = shift; open(RULEFILE,"> $rulefile"); while(<>) { chop($ip = $_); if($ip ne '') { if(/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/) { ($_) = /([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/; s/^0+//; s/\.0+/\./g; s/^\./0\./; s/\.$/\.0/; s/\.\./\.0\./g; s/\.\./\.0\./g; print RULEFILE $_,$add,"\n"; }} } print RULEFILE $bottom,$add; close(RULEFILE);
/usr/local/sbin/tcp_smtp_cdb を以下とする.root への実行許可を忘れずに. gate の ip データベース更新時には,gate-system によってこのスクリプトが呼び出される.
#!/bin/sh # Kyoma TAKAHASHI 1999.9.9 # 10.16 /usr/local/bin/gate-ip-show -f ip `/usr/local/bin/gate-ip-list stable` | /usr/local/sbin/list-2-tcp /etc/tcp.smtp && /usr/local/bin/tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtpgate-ip-show, gate-ip-list は,gate-system のプロダクツ.
# pop-3 /usr/local/bin/tcpserver -v -u 0 -g 0 0 pop-3 /var/qmail/bin/qmail-popup \ blue.ep.sci.hokudai.ac.jp /bin/checkapoppw /var/qmail/bin/qmail-pop3d \ Maildir 2>&1 | /var/qmail/bin/splogger pop3d 3 & # imap2 /usr/local/bin/tcpserver -v -u 0 -g 0 0 imap2 /usr/local/sbin/imapd \ 2>&1 | /var/qmail/bin/splogger imapd 3 &ログは,以下のようになる.
Jul 28 01:00:25 blue pop3d: 933091225.430984 tcpserver: status: 1/40 Jul 28 01:00:25 blue pop3d: 933091225.431641 tcpserver: pid 2535 from 133.50.133.146 Jul 28 01:00:25 blue pop3d: 933091225.439887 tcpserver: ok 2535 blue.ep.sci.hokudai.ac.jp:133.87.45.26:110 skyblue.sci.hokudai.ac.jp:133.87.52.40::2055 Jul 28 01:00:25 blue pop3d: 933091225.498577 tcpserver: end 2535 status 256 Jul 28 01:00:25 blue pop3d: 933091225.498914 tcpserver: status: 0/40 Jul 28 00:45:57 blue imapd: 933090357.824565 tcpserver: status: 1/40 Jul 28 00:45:57 blue imapd: 933090357.825841 tcpserver: pid 2394 from 133.50.133.134 Jul 28 00:45:57 blue imapd: 933090357.835252 tcpserver: ok 2394 blue.ep.sci.hokudai.ac.jp:133.87.45.26:143 geomacg.sci.hokudai.ac.jp:133.50.133.134::1030 Jul 28 00:46:57 blue imapd: 933090417.606449 tcpserver: end 2394 status 0 Jul 28 00:46:57 blue imapd: 933090417.606574 tcpserver: status: 0/40
ezmlm-0.53/INSTALL に従って作業.
% cd ezmlm-0.53/ % make % make man % su # make setup/usr/local/bin/ezmlm/ 以下の ezmlm のコマンドバイナリ群にパスを通す. qmail のコマンドにパスを通したのに習って.
以下,テストを行う.
% ezmlm-make ~/testlist ~/.qmail-testlist kyoma-testlist ep.sci.hokudai.ac.jp メーリングリスト (ML) を作る.詳細は,ezmlm-make の man(日本語訳)を見よ. % ezmlm-sub ~/testlist kyoma@ep.sci.hokudai.ac.jp ML 主催者によって手動で購読者を追加する.詳細は,ezmlm-sub の man(日本語訳)を見よ. % echo subject:testing | qmail-inject kyoma-testlist@ep.sci.hokudai.ac.jp ML に投稿してみる.上で登録したアドレスにメールが届くか. % qmail-inject kyoma-testlist-get.1@ep.sci.hokudai.ac.jp < /dev/null 投稿アーカイブから記事を取り出すコマンドを試す.記事が送られてくるか. 自動処理コマンドの詳細は http://www.jp.qmail.org/ezmlm/chart.html を見よ. % qmail-inject kyoma-testlist-unsubscribe@ep.sci.hokudai.ac.jp < /dev/null ML 参加者による自動登録抹消を試す.確認メールが送られてくるので,その指示に従う. 自動処理コマンドの詳細は http://www.jp.qmail.org/ezmlm/chart.html を見よ. % ezmlm-list ~/testlist ML 登録アドレス一覧を見る.上で行った登録抹消が行われているか. 詳細は,ezmlm-list の man(日本語訳)を見よ.
ezmlm-idx-0.32/INSTALL.idx に従って作業.
% mv ezmlm-idx-0.32/* ezmlm-0.53/ % cd ezmlm-0.53/ % patch < idx.patchcrontab のありかを調べる.
% which crontab /usr/bin/crontab/usr/bin にあれば先へ進む. 違う場所にある場合は,conf-cron にありかを書き込む.
MySQL(解説は http://www.mysql.com/)を使うか否かを決定.ここでは,使わないこととして,先に進む.使う場合には,この段階でやるべき作業がある.
% make clean % make; make man % make jp 使用言語を選ぶ.jp は日本語の意.以下,テストを行う.
% chmod 755 ezmlm-test % su # adduser eztest # exit % su eztest $ cd ezmlm-0.53/ 新しくコンパイルした ezmlm-idx のコマンドバイナリ群にパスが通っているか確認. $ ./ezmlm-test テストが実行される. $ exitMySQL を使わない場合は,以下を実行.使う場合には,異なる作業が要る.
% make std % makeバイナリを /usr/local/bin/ezmlm/ にコピーする.手動でやっても良い.
% su # make setup再びテスト.
% su eztest $ cd ezmlm-0.53/ /usr/local/bin/ezmlm/ 以下のコマンドバイナリ群にパスが通っているか確認. $ ./ezmlm-test テストが実行される. $ exit % su # userdel eztest # groupdel eztest # rm -r ~eztest/
MUA を使えるようにする ○ im の設定 im は mew の下側で用いられます. im は ~/.im が存在しない場合,/usr/lib/im/SiteConfig を見るので このファイルを編集します. # vi /usr/lib/im/SiteConfig 以下のコメントを外します. Smtpservers=localhost # default server for SMTP Imget.Src=local # default source of imget (local mailbox) MBoxStyle=qmail # if folder style mbox of qmail is used また以下の行を加える. FromDomain=ep.sci.hokudai.ac.jp ToDomain=ep.sci.hokudai.ac.jp ○ mh の設定 mh は mnews を始めとして多くの MUA で用いられています. mh は sendmail 用になっているので, qmail 用に設定をし直す必要があります. 実際には /usr/lib/mh/mtstailor を編集します. # cd /usr/lib/mh/mtstailor # vi /usr/lib/mh/mtstailor 以下のように編集します mmdfldir: mmdflfil: Mailbox uucpldir: uucplfil: mmdelim1: \001\001\001\001\n mmdelim2: \001\001\001\001\n mmailid: 0 umincproc: lockstyle: 0 lockldir: hostable: /usr/lib/mh/hosts sendmail: /usr/lib/sendmail 以下は一般ユーザ毎の設定 $ /usr/bin/mh/inc 各人のホームに .mh_profile が作られる. また,~/Mailbox に配送されたメールを取りにいく. inc コマンドにパスが通っていなかった. mh を使う MUA は動くようになりました.