日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
SENDMAIL(8) SENDMAIL(8) 名称 sendmail - 電子メール転送エージェント 書式 sendmail [flags] [address ...] newaliases mailq [-v] hoststat purgestat smtpd 解説 sendmail は、メッセージを 1 人以上の recipients (受信者) に送信し、ネッ トワークが必要とするものは何でもメッセージを経路制御します。sendmail は、正しい場所にメッセージを配信するのに必要なインターネットワーク転送 を行います。 sendmail は、ユーザインタフェースとして使われることは考慮されていませ ん。ユーザにとって使いやすいフロントエンドは別のプログラムで提供されま す。sendmail は、あらかじめメールとして整形されたメッセージを配送するた めだけに使われます。 引数を指定せずに起動すると、sendmail は、標準入力をファイルの終端まで、 または `.'だけを含む行まで読み込み、そこで確認したメッセージのコピー を、列挙されたアドレスに送ります。アドレスの文法や内容にもとづいて経路 に使用するネットワークを決定します。 ローカルアドレスは、あるファイルの中を検索して適当なエイリアスを行いま す。先頭にバックスラッシュ `\' のついたアドレスについては、エイリアスは 行なわれません。8.10 から、送り手は、エイリアス展開の対象に含まれるよう になりました。つまり、`john' が `group' にメールを送る際に、`john' が `group' に含まれているならば、送ったメッセージは、`john' にも送られま す。 パラメータ -Ac 動作モードが最初のメール送信依頼であることを示していない場合で も、submit.cf を使用します。 -Am 動作モードが最初のメール送信依頼であることを示している場合でも、 sendmail.cf を使用します。 -Btype ボディのタイプを type に設定します。現在有効なのは、7BIT か 8BITMIME です。 -ba ARPANET モードに移行します。すべての入力行は、CR-LF で終わらなけ ればならず、すべてのメッセージの末尾には CR-LF がつきます。ま た、``From:'' と ``Sender:'' フィールドは、送り手の名前として チェックされます。 -bC 設定ファイルをチェックします。 -bd デーモンとして実行します。sendmail は、fork し、着信 SMTP 接続の ために ソケット 25 で listen (接続を受け付け) して、バックグラウ ンドで実行します。これは、通常、/etc/rc から実行されます。 -bD フォアグラウンドで動作する以外は、-bd と同じです。 -bh 継続的なホスト状況データベースの現在の値を表示します。 -bH 継続的なホスト状況データベースから期限切れのエントリを抹消しま す。 -bi エイリアスデータベースを初期化します。 -bm 普通にメールを配送します (デフォルト)。 -bp メールキューのリストを表示します。 -bP キューの中のエントリ数を表示します。共有メモリサポート付きの場合 のみ、使用可能です。 -bs 標準入出力で RFC821 にもとづいた SMTP プロトコルを使います。この フラグは、-ba フラグのうち SMTP 互換の全ての操作を含みます。 -bt アドレスのテストモードで起動します。このモードは、対話モードでア ドレスを入力し、処理の過程を表示します。設定ファイルをデバッグす るのに使います。 -bv 名前のチェックだけを行います。メッセージの収集や配送は行いませ ん。ベリファイモードは、ユーザやメーリングリストが有効かどうかを 確認するために使います。 -Cfile 別の設定ファイルを使います。sendmail は、別の設定ファイルを使用 する場合には、拡張された権限 (ユーザ ID 設定またはグループ ID 設 定) を断念します。 -D logfile デバッグ出力を標準出力の代わりに指定されたログファイルへ出力しま す。 -dcategory.level... category のデバッグフラグを level に設定します。category は、整 数またはトピックを指定する名前であり、level は、希望するデバッグ 出力のレベルを指定する整数です。一般的に、レベルが高いほど出力が 多くなります。コンマで分けることで複数のフラグを指定できます。デ バッグカテゴリの数値の表は、sendmail ソースディストリビューショ ンの TRACEFLAGS ファイルで見つけることができます。 オプション -d0.1 は、sendmail のバージョンとコンパイル時に指定さ れたオプションを表示します。 その他のカテゴリのほとんどは、ソースコードに書かれていますが、 sendmail のソースコードと合わせて使う場合にのみ有用です。 -Ffullname 送り手のフルネームを設定します。 -fname ``from'' に入る名前 (つまり、エンベロープ中の送り手 (envelope sender) の名前です) を設定します。最初の送信依頼の間に From: ヘッダが失われている場合、このアドレスは、From: ヘッダの中でも用 いられる場合があります。エンベロープ中の送り手アドレスは、メッ セージ伝送状態の通知の受け手として用いられ、また、Return-Path: ヘッダにも現れます。-f は、``trusted'' なユーザ (普通は、root, daemon, network です) が使うか、送り手が自分自身の名前を指定して 使う場合のみ指定することができます。それ以外の場合、X Authentication-Warning ヘッダがメッセージに付加されます。 -G メッセージのリレー (ゲートウェイ) 送信。例えば、rmail が sendmail を呼ぶときがそうです。 -hN ホップカウントを N に設定します。ホップカウントは、メールが処理 されるたびに増えていきます。ホップカウントが上限に達したとき、 メールは、「エイリアスがループしている」という旨のエラーメッセー ジといっしょに送り返されます。もしこのフラグが指定されなければ、 メッセージのなかの ``Received:'' 行がカウントされます。 -i 着信メッセージの行で先導するドットを取り除きません、そして、着信 メッセージの終わりとしてそれ自体で行のドットを扱いません。このフ ラグは、データをファイルから読み込むような場合に使用する必要があ ります。 -L tag syslog メッセージ中で使われる識別子を、指定した tag に設定しま す。 -N dsn 配送状況の通知条件を dsn に設定します。dsn には、`never' (何も通 知しない) または、コンマで区切った、`failure' (配送が失敗した場 合に通知する) `delay' (配送が遅れた場合に通知する) `success' (配 送が正常に行われた場合に通知する) の組み合わせを指定する事ができ ます。 -n エイリアスを行いません。 -O option=value オプション option を、指定した value に設定します。この形式で は、長いオプション名が使用されます。詳しくは、後に記述します。 -ox value オプション x を、指定した value に設定します。この形式では、一文 字のオプション名しか使用できません。短いオプション名については、 このマニュアルには記述されていません。詳しくは、Sendmail Installation and Operation Guide を参照してください。 -pprotocol メッセージを受け取るために利用するプロトコル名を設定します。設定 できるのは、``UUCP'' のようなプロトコル名だけかプロトコル+ホスト 名、たとえば ``UUCP:ucbvax'' などです。 -q[time] キューのなかにあるメッセージを指定した時間間隔で処理します。time を省略した場合は、キューの内容を一度だけしか処理しません。time は、秒を表す `s'、分を表す `m' (デフォルト)、時間を表す `h'、日 を表す `d'、週を表す `w' の単位を付けた数字で指定します。たとえ ば、`-q1h30m' や `-q90m' は、タイムアウトを 1 時間 30 分に設定し ます。デフォルトでは、sendmail は、デーモンとしてバックグラウン ドで実行されます。このオプションは、問題なく -bd と共に指定可能 です。 -qp[time] -qtime と似ていますが、sendmail は、キューを処理する子プロセスを 定期的に fork するのではなく、キューの処理とスリープを交互に行う 1 個の永続的な子プロセスを fork します。スリープ時間は、引数で指 定します。デフォルトは、1 秒です。直前のキュー実行においてキュー が空だった場合、プロセスは、常に最低 5 秒は、スリープします。 -qf キューに保存されているメッセージを 1 度だけ処理します。この際、 fork() せずに、フォアグラウンドで実行します。 -qGname name という名前のキューグループ中のジョブのみ処理します。 -q[!]Isubstr キュー ID の文字列に substr が含まれるジョブのみを処理します。! が指定されると、その逆となります。 -q[!]Qsubstr 隔離された理由の文字列に substr が含まれる隔離されたジョブのみを 処理します。! が指定されると、その逆となります。 -q[!]Rsubstr 受け手のリストの文字列に substr が含まれるジョブのみを処理しま す。! が指定されると、その逆となります。 -q[!]Ssubstr 送り手の文字列に substr が含まれるジョブのみを処理します。! が 指定されると、その逆となります。 -Q[reason] 指定された理由で通常のキューの要素を隔離します。理由が指定されな ければ、隔離されたキューの要素の隔離を止めます。上述の要素の選択 処理のいずれかと合わせてのみ使うべきです。 -R return メッセージがバウンスした時に返送されるメッセージの量を設定しま す。return パラメータには、メッセージ全体を返送する場合は、 `full' を、ヘッダのみを返送する場合は、`hdrs' を指定します。 -rname -f フラグと同じですが、古い形式です。 -t 受け手をメッセージから読み込みます。To:, Cc:, Bcc: フィールドが 受け手のアドレスとして読み込まれます。Bcc: フィールドは、メッ セージの転送前に削除されます。 -V envid オリジナルのエンベロープ ID を設定します。これは、DSN をサポート するサーバ間では SMTP 上を伝達し、DSN に従ったエラーメッセージの 中で返送されます。 -v 詳細モードに移行します。エイリアスの展開などが報告されます。 -X logfile 指定された logfile に、メーラに出入りする情報すべてを記録しま す。メーラをデバッグする際の最後の手段としてのみ使ってください。 非常に大量の情報があっという間に記録されます。 -- コマンドフラグ処理を停止し、残りの引数をアドレスとして使用しま す。 オプション 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' によってメールが送り返されないなら、そし て送信側がこのマシンのローカルであるなら、メッセージのコピーは、 送信側のホームディレクトリのファイル dead.letter に付け加えられ ます。 SaveFromLine メッセージのはじめに UNIX-style の From 行を残します。 MaxHopCount=N メールがループしていると判断されない、最大のホップ数を指定しま す。 IgnoreDots `.' だけを含む行をメッセージの終わりとして解釈しません。 SendMimeErrors エラーメッセージをMIMEフォーマットで送り返します。設定されていな い場合は、DSN (Delivery Status Notification: 配送状況通知) SMTP 拡張は、無効になります。 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 を行います。メモリが少な いマシンでは便利です。 SevenBitInput 到着するメッセージを 7 ビットにします (8 ビット目は落します)。 EightBitMode=mode 8 ビットの入力を 7 ビットの宛先へ送る場合の処理方法を mode に設 定します。処理方法には、m (mime 化) 7 ビット MIME 形式へ変換、p (パス) 8 ビットのまま配送 (プロトコルには違反します)、s (厳密) メッセージをバウンス、があります。 MinQueueAge=timeout 配送の試行の間、ジョブがキューに蓄積される時間を設定します。 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 に設定します。 エイリアスのなかで最初の文字が `|' で始まるものは、メールの内容をパイプ でコマンドに送るものと解釈されます。sendmail に引数の間から空白文字を削 除させないようにする場合は、名前をクォートする (" でくくる) 必要があり ます。以下に、例を示します: 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 すべてのアドレスについて完全に成功しました。 EX_NOUSER ユーザ名が認識できません。 EX_UNAVAILABLE 処理に必要なリソースを得ることができません。 EX_SYNTAX アドレスに文法的な間違いがあります。 EX_SOFTWARE 引数が間違っているなどの、内部的なエラーです。 EX_OSERR ``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 ヘルプファイル /etc/mail/statistics 集められた統計値 /var/spool/mqueue/* 一時ファイル 関連項目 mail(1), syslog(3), aliases(5), mailaddr(7), mail.local(8), rc(8), rmail(8) DARPA Internet Request For Comments RFC819, RFC821, RFC822. Sendmail Installation and Operation Guide, No. 8, SMM. http://www.sendmail.org/ US Patent Numbers 6865671, 6986037. 歴史 sendmail コマンドは、4.2BSD で登場しました。 $Date: 2013-11-22 20:51:56 $ SENDMAIL(8)