*sendmailを特定のディレクトリ以下に配置するには [#u5a2ce20]
 RIGHT:川俣吉広, kaw@on.rim.or.jp
 RIGHT:2002年 6月 25日
 
 sendmailは、ソースパッケージからデフォルトでインストールすると、
 -設定ファイル関係 ... /etc/mail/*
 -実行ファイル ... /usr/sbin/*, /usr/bin/*
 -取り扱うデータ ... /var/spool/*
 
 に置かれるようになっています。
 
 ところが、場合によってはインストール先をこれらのデフォルト値から変更してインストールしたい 場合があります。例えば、既存の運用環境を壊さずに、新しいバージョンのsendmailをテストしたい、 などの理由からです。
 
 このページでは、sendmailの環境を/usr/local/sendmail以下にインストールするケースを例にとり、 sendmailを特定のディレクトリ以下に配置する方法を説明します。
 
 なお、このページの記述内容は、Plamo Linux 2.0 , sendmail-8.12.4 で確認を行いました。
 #contents
 **おことわり [#j695ca44]
 >このページで解説する内容は、川俣吉広が独自に調査した結果を公開したものです。~
 ページの記述内容は正確を期すように努めておりますが、 記述内容を実行したことにより損害が発生しても当方では責任を負いかねますので、 実際の作業については各自の責任で行って下さい。~
 ~
 また、以下の説明はsendmailのインストールと設定についてソースパッケージからデフォルトでの インストールが行える程度の技術スキルを前提としています。
 **コンパイル前の準備 [#eea36210]
 現在動作しているsendmailを停止します。
  killall -TERM sendmail
 現在の設定のバックアップを取ります。
  mkdir /etc/mail.bak
  cd /etc/mail.bak
  (cd /etc/mail && tar cf - .) | tar xpvf -
 mail.bakディレクトリ以下は、 新しいsendmail環境が/etc/mail以下の設定ファイルを上書きしてしまった 時の保険です。
 **コンパイルとインストール [#u5ab52a7]
 sendmailのソースパッケージを展開します。
  cd (作業用ディレクトリ)
  tar xvzf sendmail.8.12.4.tar.gz
 sendmail-8.12.4/devtools/Site/site.config.m4を作成します。
 
 site.config.m4の内容;
  define(`confEBINDIR',       `/usr/local/sendmail/libexec')dnl
  define(`confENVDEF',        `-D_DIR_SENDMAILCF=\"/usr/local/sendmail/etc/\" ↓
  -D_PATH_SENDMAILCF=\"/usr/local/sendmail/etc/sendmail.cf\"')dnl
  define(`confMSP_QUEUE_DIR', `/usr/local/sendmail/spool/clientmqueue')dnl
  define(`confHFDIR',         `/usr/local/sendmail/etc')dnl
  define(`confINCLUDEDIR',    `/usr/local/sendmail/include')dnl
  define(`confLIBDIR',        `/usr/local/sendmail/lib')dnl
  define(`confMANROOT',       `/usr/local/sendmail/man/cat')dnl
  define(`confMANROOTMAN',    `/usr/local/sendmail/man/man')dnl
  define(`confMBINDIR',       `/usr/local/sendmail/sbin')dnl
  define(`confSBINDIR',       `/usr/local/sendmail/sbin')dnl
  define(`confSHAREDLIBDIR',  `/usr/local/sendmail/lib')dnl
  define(`confSTDIR',         `/usr/local/sendmail/etc')dnl
  define(`confUBINDIR',       `/usr/local/sendmail/bin')dnl
 RIGHT:(↓の行は折り返してますが、実際は1行です)
 
 コンパイルします。
  cd (作業用ディレクトリ)/sendmail-8.12.4
  sh Build
 ディレクトリを作成し、パーミッション等を設定します。
  mkdir -p /usr/local/sendmail/bin
  mkdir /usr/local/sendmail/sbin
  mkdir /usr/local/sendmail/etc
  mkdir /usr/local/sendmail/include
  mkdir /usr/local/sendmail/lib
  mkdir /usr/local/sendmail/libexec
  mkdir -p /usr/local/sendmail/man/cat1
  mkdir /usr/local/sendmail/man/cat5
  mkdir /usr/local/sendmail/man/cat8
  mkdir -p /usr/local/sendmail/spool/clientmqueue
  mkdir /usr/local/sendmail/spool/mqueue
  
  chmod 0770 /usr/local/sendmail/spool/clientmqueue
  chown smmsp:smmsp /usr/local/sendmail/spool/clientmqueue
  chmod 0700 /usr/local/sendmail/spool/mqueue
 sendmail-8.12.4/cf/cf/Makefile を編集します。~
  ----[Makefileの内容]----
     :
     :
  # name of source for sendmail.cf (without extension)
  CF=	sendmail
  # name of source for submit.cf (without extension)
  SUBMIT=	submit
  # directory for .cf files
  MAILDIR=/usr/local/sendmail/etc    ←この部分を修正
  M4=	m4
  CFDIR=	..
  CHMOD=	chmod
     :
     :
 cf/cf/sendmail.mc, cf/cf/submit.mcを編集します。
 
 これらの設定ファイルの作成方法は通常の場合と同じですが、 sendmail.mcの各種定義に先立ち、
  define(`MAIL_SETTINGS_DIR', `/usr/local/sendmail/etc/')dnl
  define(`QUEUE_DIR', `/usr/local/sendmail/spool/mqueue')dnl
 を書いておきます。
  divert(0)dnl
 と
  VERSIONID(`$Id$')dnl
 の間くらいが適当と思われます。また、sendmail.cf中で、ファイルの位置を指定している部分があれば、それも併せて書き換えておきます。
 
 submit.mcも同様に、
  define(`MAIL_SETTINGS_DIR', `/usr/local/sendmail/etc/')dnl
  define(`QUEUE_DIR', `/usr/local/sendmail/spool/mqueue')dnl
  define(`MSP_QUEUE_DIR', `/usr/local/sendmail/spool/clientmqueue')dnl
 を書いておき、これで sendmail.cf と submit.cf を作成します。
  make sendmail.cf
  make submit.cf
 sh Build installを実行します。
  cd (作業用ディレクトリ)/sendmail-8.12.4
  sh Build install
 **動作確認と実行の設定 [#j4744767]
 通常の手順と変わりありませんので、項目のみ列挙します。
 -Address Test Modeで実行し、動作を確認します。
 -手動でsendmailを立ち上げ、送受信の動作を確認します。
 -syslogを検査し、異常のないことを確認します。
 -システム起動時に立ち上がるように、設定ファイルを記述します。
 **参考リンク [#vfe209aa]
 -[[Sendmail Home Page>http://www.sendmail.org/]]
 -[[Information about the sendmail>http://www.kyoto.wide.ad.jp/mta/sendmail.html]]
 -[[cfプロジェクト (仮称)>http://home.jp.freebsd.org/~koga/cf/]]
 //-[[検索エンジンで探すと一杯出てきます。>http://www.google.co.jp/search?hl=ja&q=%2Fetc%2Fmail%2Fsendmail.cf+sendmail.mc+%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB+%E8%A8%AD%E5%AE%9A&lr=lang_ja]]
 
 RIGHT:川俣吉広, kaw@on.rim.or.jp
 RIGHT:2002年 6月 25日
 ----
 [[FrontPage]]に戻る。
Reload  New Edit Diff Attach Copy Rename  Top Index Search Recent Backups  Help  RSS