sendmail(8) FreeBSD 一般コマンドマニュアル

sendmail

前のページ 上に戻る 次のページ

sendmail



書式

       sendmail [flags] [address ...]
       newaliases
       mailq [-v]
       hoststat
       purgestat
       smtpd


解説

       sendmail  はメッセージを一人または複数の受け手 (recipient)
       に送ります。必要ならばインターネットワークを通してメッセー
       ジを正しい場所に転送します。

       sendmail  はユーザインタフェースとして使われることは考慮さ
       れていません。ユーザにとって使いやすいフロントエンドは別の
       プログラムで提供されます。 sendmail は、あらかじめメールと
       して整形されたメッセージを配送するためだけに使われます。

       引数を指定せずに起動すると、 sendmail は標準入力をファイル
       の終端まで、または `.'だけを含む行まで読み込み、そこで確認
       したメッセージのコピーを、列挙されたアドレスに送ります。ア
       ドレスの文法や内容にもとづいて経路に使用するネットワークを
       決定します。

       ローカルアドレスは、あるファイルの中を検索して適当なエイリ
       ア スを行います。先頭にバックスラッシュ `\' のついたアドレ
       スについては、エイリアスは行なわれません。 8.10 から、送り
       手 は エイリアス展開の対象に含まれるようになりました。つま
       り、`john' が `group' にメールを送 る 際 に、  `john'   が
       `group' に含まれているならば、送ったメッセージは `john' に
       も送られます。

   B>パB>ラB>メB>ーB>タ
       -Btype ボディのタイプを type に設定します。現在有 効 な の
              は、 7BIT か 8BITMIME です。

       -ba    ARPANET  モードに移行します。すべての入力行は CR-LF
              で終わらなければならず、すべてのメッセージの末尾 に
              は CR-LF がつきます。また、``From:'' と ``Sender:''
              フィールドは送り手の名前としてチェックされます。

       -bd    デーモンモードで実行します。Berkley IPC が 必 要 で
              す。  sendmail は fork を行い、バックグラウンドで動
              作し、ソケット番号 25 で SMTP コネクションを待ち ま
              す。 通 常このモードは、 /etc/rc から実行されていま
              す。

       -bD    フォアグラウンドで動作する以外は -bd と同じです。

       -bh    継続的なホスト状況データベースの現在の値を表示し ま
              す。

              話 モ ー ドでアドレスを入力し、処理の過程を表示しま
              す。設定ファイルをデバッグするのに使います。

       -bv    名前のチェックだけを行います。メッセージの収集や 配
              送 は行いません。ベリファイモードは、ユーザやメーリ
              ングリストが有効かどうかを確認するために使います。

       -Cfile 別の設定ファイルを使います。 sendmail は、別の設 定
              ファ イルを使用する場合は root として実行することは
              できません。

       -dX    デバッグ値を X に設定します。

       -Ffullname
              送り手のフルネームを設定します。

       -fname ``from'' に入る名前(つまり、エンベロープ中の送り 手
              (envelope sender) の名前です)を設定します。最初の送
              信依頼の間に From: ヘッダが失われている場合、このア
              ドレスは From: ヘッダの中でも用いられる場合がありま
              す。エンベロープ中の送り手アドレスは、メッセージ 伝
              送 状 態の通知の受け手として用いられ、また、Return-
              Path: ヘッダにも現れます。 -f は、``trusted'' な ユ
              ーザ(普通は root, daemon, network です)が使うか、送
              り手が自分自身の名前を指定して使う場合のみ指定す る
              こ と ができます。それ以外の場合、X-Authentication-
              Warning ヘッダがメッセージに付加されます。

       -G     メッセージのリレー (ゲートウェイ) 送信。 例 え ば、
              rmailsendmail を呼ぶときがそうです。

       -hN    ホップカウントを N に設定します。ホップカウントは、
              メールが処理されるたびに増えていきます。ホップカ ウ
              ン トが上限に達したとき、メールは「エイリアスがルー
              プしている」という旨のエラーメッセージといっしょ に
              送 り返されます。もしこのフラグが指定されなければ、
              メッセージのなかの ``Received:'' 行がカウントされま
              す。

       -i     入力されるメッセージ中の `.' だけを含む行を無視しま
              す。このフラグは、データをファイルから読み込むよ う
              な場合に使用する必要があります。

       -L tag syslog メッセージ中で使われる識別子を、指定した tag
              に設定します。

       -N dsn 配送状況の通知条件を dsn に設定します。 dsn に は、
              `never'  (何も通知しない)または、コンマで区切った、
              `failure' (配送が失敗した場合に通知する) `delay'  (
              配送が遅れた場合に通知する) `success' (配送が正常に
              行われた場合に通知する) の組み合わせを指定する事 が
              できます。

       -pprotocol
              メッ セージを受け取るために利用するプロトコル名を設
              定します。設定できるのは、``UUCP'' のようなプロトコ
              ル名だけかプロトコル+ホスト名、たとえば ``UUCP:ucb-
              vax'' などです。

       -q[time]
              キューのなかにあるメッセージを処理する間隔を設定 し
              ま す。 time を省略した場合は、キューの内容を一度だ
              けしか処理しません。 time は、 `s'  ( 秒)、  `m'  (
              分)、  `h' (時間)、 `d' (日)、 `w' (週)の単位を付け
              た数字で指定します。たとえば、 `-q1h30m' や `-q90m'
              は、 タイムアウトを 1 時間 30 分に設定します。 time
              が指定されると、 sendmail はデーモンとしてバック グ
              ラ ウンドで実行されます。このオプションは、問題なく
              -bd と共に指定可能です。

       -qIsubstr
              キュー ID の文字列に substr が含まれるジョブのみ を
              処理します。

       -qRsubstr
              受 け手のリストの文字列に substr が含まれるジョブの
              みを処理します。

       -qSsubstr
              送り手の文字列に substr が含まれるジョブのみを処 理
              します。

       -R return
              メッ セージがバウンスした時に返送されるメッセージの
              量を設定します。 return パラメータには、メッセー ジ
              全 体を返送する場合は `full' を、ヘッダのみを返送す
              る場合は `hdrs' を指定します。

       -rname -f フラグと同じですが、古い形式です。

       -t     受け手をメッセージから読み取ります。To:, Cc:,  Bcc:
              フィ ー ル ド が 受け手のアドレスとして読み込まれま
              す。Bcc: フィールドはメッセージの転送前に削除されま
              す。

       -U      最初の(ユーザからの)発送である事を示します。このフ
              ラグは、 Mailexmh のようなユーザエージェント か
              ら 呼び出す場合は 必ず指定する必要があり、 rmail な
              どのネットワーク配送エージェントから呼び出 す 場 合
              は、 絶対に指定してはいけません。

       -V envid
              オ リ ジ ナ ル のエンベロープ ID を設定します。これ
              は、DSN をサポートするサーバ間では SMTP 上 を 伝 達

   B>オB>プB>シB>ョB>ン
       sendmail  には、設定することができる多くの処理オプションが
       あります。通常、これらのオプションはシステム管理者のみが使
       い ま す。オプションは、コマンドラインから -o フラグを使っ
       て(短いオプション名で)指定したり、 -O フラグを使って(長 い
       オ プション名で)指定したり、設定ファイルから指定することが
       できます。ここに記述しているのは部分的なもので、コマンド行
       から指定する場合に便利な物だけを、長いオプション名で示して
       います。完全なリスト(と詳細)は、 Sendmail Installation and
       Operation Guide を参照してください。オプションには以下の物
       があります。

       AliasFile=file
              別のエイリアスファイルを使います。

       HoldExpensive
              接続するのに時間がかかるホストと接続するときは、 す
              ぐに接続せず、リクエストはキューに入れられます。

       CheckpointInterval=N
              sendmail  が、 N 個の配送に成功するたびにキューファ
              イルにチェックポイントを設定します(デフォルトは  10
              個です)。これによって、システムのクラッシュによって
              長いメーリングリストの配送が中断されたときでも、 再
              開時に同じ人に重複して配送されることを防ぎます。

       DeliveryMode=x
              配 送モードを x に設定します。配送モードには `i' 対
              話的(同期的)配送モード、 `b' バックグラウンド(非 同
              期 的) 配送モード、 `q' キューモード(実際の配送は、
              キューが実行されるときに行われる)、 `d' 延期モード(
              -D オプションで指定されたマップ (デフォルトはホスト
              マップ) に対しデータベースの検索が行われない以外 は
              `q' と同じ)があります。

       ErrorMode=x
              エラー処理をモード x に設定します。有効なモードとし
              て、 `m' はエラーメッセージを送り返します。 `w'  は
              エ ラーメッセージを送り手の端末に書き出します (送り
              手がログインしていなければ、メールを返します)。 `p'
              は、 エ ラ ー メッセージを端末に表示します(デフォル
              ト)。 `q' は、エラーメッセージを捨てます(exit コ ー
              ド だけを返します)。 `e' は、BerkNet 用に特別処理を
              します。もし、モード `m' や `w' を使ってい る 場 合
              に、 エラーとなったメッセージがエラーメールとして送
              り返されず、送り手が sendmail を実行しているマシ ン
              上 のユーザならば、メッセージのコピーは送り手のホー
              ムディレクトリにある dead.letter に追加されます。

       SaveFromLine
              メッセージのはじめに UNIX-style の From 行を残し ま

       ConnectionCacheTimeout=timeout
              コネクションキャッシュのタイムアウトを設定します。

       ConnectionCacheSize=N
              コネクションキャッシュのサイズを設定します。

       LogLevel=n
              ログレベルを設定します。

       MeToo=False
              エイリアスに自分自身が含まれていても、``me''(送り手
              自身)には送りません。

       CheckAliases
              newaliases(1) コマンドの実行の際、エイリアスの右辺(
              エイリアスの値)の有効性をチェックします。

       OldStyleHeaders
              このオプションが設定されていれば、メッセージが古 い
              ス タイルのヘッダを持つことがあることを意味します。
              このオプションが設定されていなければ、このメッセ ー
              ジ が新しいスタイルを持っていることが保証されます(2
              つのアドレスの間はスペースのかわりにコンマで区切 ら
              れます)。このオプションが設定されていると、ヘッダの
              フォーマットをたいていの場合に正しく決定する適応 ア
              ルゴリズムが用いられます。

       QueueDirectory=queuedir
              キュ ー メッ セージを保存するディレクトリを選択しま
              す。

       StatusFile=file
              指定した名前のファイルに統計情報をセーブします。

       Timeout.queuereturn=time
              キューのなかの配送されなかったメッセージのタイム ア
              ウト時間を設定します。この時間内に(ホストのダウンな
              どにより)配送が行われなかったときには、失敗した旨の
              メッセージが送り返されます。デフォルトは 5 日です。

       UserDatabaseSpec=userdatabase
              セットした場合、ユーザデータベースを見て、フォワ ー
              ド 情報を得ます。この方法をエイリアス機構の補助とし
              て使用する事ができます。この方法は、データベース が
              分 配されることを意図している点が異なります。一方、
              エイリアスは、そのホストローカルでのみ有 効 で す。
              sendmail が USERDB 付きでコンパイルされていなければ
              使うことはできません。

       ForkEachJob
              キューを処理する間、各ジョブごとに fork を 行 い ま
              配送の試行の間、ジョブがキューに蓄積される時間を 設
              定します。

       DefaultCharSet=charset
              文字集合が特に指定されていない 8 ビットデータにラベ
              ル付けする際に用いる、デフォルトの文字集合を設定 し
              ます。

       DialDelay=sleeptime
              コ ネ ク ションの確立が失敗した場合に、再試行までに
              sleeptime だけスリープします。オンデマンドでダイ ヤ
              ル接続するサイトでの使用に便利です。

       NoRecipientAction=action
              受 け 手 ヘッダ (To:, Cc:, Bcc:) がない場合の動作を
              action に設定します。 none メッセージを変更しない、
              add-to   エンベロープで指定された受け手を入れた To:
              ヘッダを加える、 add-apparrently-to エンベロープ で
              指定された受け手を入れた Apparrently-To: ヘッダを加
              える、 add-bcc 空の Bcc: ヘッダを加え る、  add-to-
              undisclosed  `To:  undisclosed-recipients:;' という
              ヘッダを加える、という動作を指定できます。

       MaxDaemonChildren=N
              待ち受け SMTP デーモンが同時に生成する子プロセス の
              最大数を N に設定します。

       ConnectionRateThrottle=N
              SMTP ポートへの 1 秒当りの最大コネクション数を N に
              設定します。

       エイリアスのなかで最初の文字が `|' で始まるものは、メー ル
       の 内 容をパイプでコマンドに送るものと解釈されます。 send-
       mail に引数の間から空白文字を削除させないようにする場合 は
       名 前をクォートする (" でくくる)必要があります。以下に、例
       を示します:

              msgs: "|/usr/bin/msgs -s"

       エイリアスには、 ``:include:filename'' という文法もあり ま
       す。 sendmail は、メールの受け手のリストを得るために、指定
       されたファイルを読みます。以下に、例を示します:

              poets: ":include:/usr/local/lib/poets.list"

       上記の 例 の 場 合 は、  /usr/local/lib/poets.list   を 読
       み、`poets' のグループのためのアドレスリストを作ります。

       sendmail  は、以下に示すような終了コードを返します。これら
       のコードは、 <sysexits.h> に定義されています。

       EX_OK  すべてのアドレスについて完全に成功しました。
              ``cannot fork''' のような、一時的な OS エラーです。

       EX_NOHOST
              ホスト名が認識できません。

       EX_TEMPFAIL
              メッ セージはすぐには送られませんでしたが、キューに
              は入れられました。

       newaliases というコマンドで実行されると、 sendmail はエ イ
       リ アスデータベースを再構築します。 mailq というコマンドで
       実行されると、 sendmail はメールキューの内容を表示します。
       hoststat  というコマンドで実行されると、 sendmail は、継続
       的なホスト状態データベースの内容を表示しま す。  purgestat
       というコマンドで実行されると、 sendmail は、継続的なホスト
       状態データベースから期限切れのエントリを抹消します。 smtpd
       と いうコマンドで実行されると、 -bd オプションを指定された
       の同じように、 sendmail はデーモンとして動作します。


       sendmail は、多くの問題の原因だと責められることがよくあ り
       ますが、実際のところ、それらの問題は、ディレクトリのモード
       が過剰に許可された状態であるなど、他の問題に起因するもので
       す。このため、 sendmail は、システムディレクトリとファイル
       のモードをチェックし、それらディレクトリ、ファイルが信頼す
       る に足るものかどうかを決定します。 DontBlameSendmail オプ
       ションを設定することにより、このチェックをオフにし、システ
       ムのセキュリティを低下することもできますが、基本的には、パ
       ーミッションの問題は修正されねばなりません。詳細な情報は、

       http://www.sendmail.org/tips/DontBlameSendmail.html

       を参照して下さい。


関連ファイル

       /etc/mail/sendmail.cf それ自身を除き、以下のファイルのパス
       はすべて /etc/mail/sendmail.cf の内部で指定されていま す。
       以下の値は概略に過ぎません。


       /etc/mail/aliases
              エイリアス名の生データ

       /etc/mail/aliases.db
              エイリアス名のデータベース

       /etc/mail/sendmail.cf
              設定ファイル

       /etc/mail/helpfile
              ヘルプファイル

       http://www.sendmail.org/


歴史

       sendmail コマンドは 4.2BSD から登場しました。



                   1Date: 2000/12/14 23:08:15 1       SENDMAIL(8)

ABELNET VPSサービス