別名データベースの構築

sendmail コマンドは、ローカル・システムの /etc/mail/aliases ファイルに収められている別名定義を直接使用することはありません。 その代わりに、sendmail コマンドは、処理されたデータベース管理プログラム (dbm) バージョンの /etc/mail/aliases ファイルを読み取ります。

この別名データベースをコンパイルするには、次のいずれかのコマンドを実行します。

  • -bi フラグを使用して、/usr/sbin/sendmail コマンドを実行します。
  • newaliases コマンドを実行します。 このコマンドにより、sendmail コマンドはローカル・システムの /etc/mail/aliases ファイルを読み取って、別名データベース情報が収められた新規ファイルを作成します。 このファイルは、次のようなより効率的な Berkeley フォーマットを使用します。

    /etc/mail/aliases.db

  • 別名の再構築フラグを使用して、sendmail コマンドを実行します。 このフラグは、別名データベースが古くなった場合、自動的に別名データベースを再構築します。 自動再構築は、大きな別名ファイルがある負荷の大きいマシンでは危険な場合があります。 データベースの再構築に再構築タイムアウト (通常は 5 分) を超える時間がかかるような場合は、複数のプロセスが同時に再構築プロセスを開始する恐れがあります。
注:
  1. これらのファイルが存在しない場合、sendmail コマンドはメールを処理できず、エラー・メッセージを生成します。
  2. 複数の別名データベースが指定されている場合、-bi フラグは、認識できるすべてのタイプのデータベースを再構築します (例えば、NDBM データベースは再構築できますが、NIS データベースは再構築できません)。

/etc/netsvc.conf ファイルには、システム・サービスの順序付けが含まれます。 別名のサービス順序を指定するには、次の行を追加します。

aliases=service, service

この場合、service には filesnis のどちらかを指定できます。 例えば、次のとおりです。

aliases=files, nis

この場合、sendmail コマンドは最初にローカル別名ファイルを使用し、それが失敗したら nis を使用します。 nis はサービスとして定義されている場合には、実行中でなければなりません。

/etc/netsvc.conf ファイルについて詳しくは、ファイル参照 を参照してください。