Written by Leif Erlingsson <leif@lege.com>.
このパートのオリジナルバージョンでは不必要なものもたくさん含まれていました。 これはそれも取り上げたものです...。
Slackwareなど: /etc/rc.d/rc.M
:
echo "Starting sendmail daemon (/usr/sbin/sendmail -bd -os) [queue only mode]..."
/usr/sbin/sendmail -bd -os # NOT "-bd -q 15m", the "standard" flags!
[参考
Slackware default)
/etc/rc.d/rc.M: # Start the sendmail daemon: if [ -x /usr/sbin/sendmail ]; then echo "Starting sendmail daemon (/usr/sbin/sendmail -bd -q 15m)..." /usr/sbin/sendmail -bd -q 15m fi
man sendmail:
指示された間隔でキュー(var/spool/mqueue
)に保存したメッセージ
を処理します。時間が省略されると一度だけキューを処理します。timeは`s'が秒
、`m'が分、`h'が時間、`d'が日、`w'が週をあらわしています。例えば`-q1h30m'
や`-q90m'はタイムアウトを1時間30分に設定します。時間になるとsendmailはバック
グランドで実行されます。このオプションは-bdとともに使ったほうが安全です。
デーモンとして実行します。これはBerkeley IPCを必要とします。sendmailはSMTP
接続用のsocket 25(/etc/services
)にリストされていてバックグランドで
フォークし実行されます。
RedHatなど: /etc/rc.d/init.d/sendmail.init
:
echo -n "Starting sendmail: [queue only mode]"
daemon sendmail -bd -os # NOT daemon sendmail -bd -q1h
-os
は基本的なものではありません。このオプションは:
スーパーセーフ [s] これを付けていればと安全です。例えば、キュー
ファイルを直接配送しようとする時でも常に呼び出します。sendmailはある環境
でクライアントをコントロールする前に常にキューファイルを呼び出します。これは
常にセットされています。
これはデフォルトのsendmail.cfで常に設定されています。
[参考:man sendmail
これをセットしていると、メッセージは古いスタイルのヘッダも処理できるように なります。セットしていないとメッセージは新しいスタイルのヘッダだけ保証されます (例えばアドレス間のスペースの代わりにコンマを使うなど)。セットしてあると 適当なアルゴリズムがヘッダフォーマットを多くのケースで正しく決定 するように使われます。
全く必要ない環境下でもキューファイルを常に呼び出します。 これは配送中のシステムクラッシュに対しても安全です。
まじめなsendmailユーザーは設定を行うためにm4ソースを使います。 sendmailをアップグレードしたり、ささいなsendmail.cfの変更以外ならなんでも この方法を行うことをお奨めします。
IPなどを動的ダイアルにしたいけれど、sendmailでの解決はしたくなく リターンヘッダなどで動作させる場合はm4ソースを使う必要はありません。
この方法はきわめてsendmail.cfバージョンに対して依存しています。
以下の方法はsendmail-8.8.x
のみで有効です。
/etc/sendmail.cf
の編集:
# avoid connecting to "expensive" mailers on initial submission?
O HoldExpensive=True
後半 ....
##### @(#)smtp.m4 8.33 (Berkeley) 7/9/96 #####
Msmtp, P=[IPC], F=mDFMuXe, S=11/31, R=21, E=\r\n, L=990,
T=DNS/RFC822/SMTP,
A=IPC $h
Mesmtp, P=[IPC], F=mDFMuXae, S=11/31, R=21, E=\r\n, L=990,
T=DNS/RFC822/SMTP,
A=IPC $h
Msmtp8, P=[IPC], F=mDFMuX8e, S=11/31, R=21, E=\r\n, L=990,
T=DNS/RFC822/SMTP,
A=IPC $h
Mrelay, P=[IPC], F=mDFMuXa8e, S=11/31, R=61, E=\r\n, L=2040,
T=DNS/RFC822/SMTP,
A=IPC $h
上で大切なフラグ(訳注:F=
の箇所)は"e"です。
あなたのファイルで他のフラグがあっても気にしないで下さい。
フラグはそのままにして、"e"がない時に限り
上の例のようにフラグ"e"のみを追加して下さい。
"e"は"expensive"としてメーラーを示しています。
以下簡単にするためにsendmailのバージョンは8.8.7であるとします。もし違う バージョンを使うなら8.8.7をそのバージョンに置き換えて読んでいってください。 また命令はsendmailの古いバージョンでは実行できません。最新のsendmailを 入手して下さい!
sendmailソースは
かできれば
でダウンロードして下さい。
私のパッチを入手することもお奨めします。エンベロープセンダーが逆エイリアス するようにしたパッチと、その他メール環境を経由してコントロールできるようにする スタッフがあります。
sendmailバージョンが8.8.7なら:
Sendmail Patch <sendmail@lege.com>
宛てにSubjectを
Subject:sendmail-8.8.7
としてメールを送って下さい[訳注:本文には特に何も書きません。メール
を送ると折り返しMIMEメールで送られてきます。MIMEで送られてくるものは
xaliases-2.0.tar.gz
, sendmail-8.8.7-cf-cpio-idcmu.gz
です)]。
このmini-HOWTOのsgmlソースについては
からも入手できます。
「Queue Remote Mail + Deliver Local Mail」を動作させるために著者のパッチ
を使わないで下さい。パッチはその他のことを解決するためのものです。ですが
多くのLinuxユーザーがこのパッチが役立つものであると気づくように言うのはよい
と思います。このパッチは仮想ドメインを動作させます。仮想ドメインは
「ローカル」であるべきではありません。xaliases
あるいは言い換えて
逆エイリアス(reverse aliasing
)を与えるものです。
sendmailソースを展開すると
/usr/src/sendmail-8.8.7/
ディレクトリができます。
/usr/src/sendmail-8.8.7/cf
に移動して下さい。
必要ならパッチを当てて次のステップに進んで下さい。LDA(Local Delivery Agent) としてprocmailを使わないならパッチをあてず、作業を行う前に
/usr/src/sendmail-8.8.7/cf/ostype/linux.m4
を保存しておいて下さい。パッチは
/tmp/sendmail-8.8.7-cf-cpio-idcmu.gz
に保存して
cd /usr/src/sendmail-8.8.7/cf
gzip -dc < /tmp/sendmail-8.8.7-cf-cpio-idcmu.gz | cpio -idcmu
とします。
procmailを使わない場合は
/usr/src/sendmail-8.8.7/cf/ostype/linux.m4
の保存したコピーを元通りに書き戻して下さい。 パッチをあてていなくてもこれらの行を確認して、
/usr/src/sendmail-8.8.7/cf/cf/yourhostname.smtp.mc
に同じものがあてられているのを確認します。
(しかしパッチを当てるなら/usr/src/sendmail-8.8.7/cf
以下の"elijah"を含むファイル名を調べてみて下さい):
dnl # Defer Delivery to "expensive" mailers until next time the
dnl # queue is processed using "O HoldExpensive=True" and make
dnl # sure smtp mailers are "expensive".
dnl # (See original "sendmail" book Chapter 30: Options,
dnl # "Oc - Don't connect to expensive mailers", or
dnl # 2nd Edition "sendmail" book Chapter 34.8.29,
dnl # "HoldExpensive (c), Queue for expensive mailers".)
dnl # / Leif Erlingsson <leif@lege.com>
define(`confCON_EXPENSIVE', `True')
define(SMTP_MAILER_FLAGS, e)
MAILER(local)dnl
MAILER(smtp)dnl
このドキュメントのバージョン 1.x では
/var/X11R6/lib/fvwm/system.fvwmrc
に関する(訳注:ヴィンドウマネージャの)メニューサポートの提案も含まれて いました。現在のバージョンではこれはなくしましたが、必要なら取り寄せる こともできます:
メールの Subject: に
Menu support suggestionsと書いて
Menu support suggestions <fvwmrc@lege.com>
宛てに送って下さい(訳注:本文には何も書きません。メールを送ると 折り返しMIMEメールで送られてきます)。