
Ubuntu日本語フォーラム

ログインしていません。
お世話になっております。前回(https://forums.ubuntulinux.jp/viewtopic.php?id=6834)sendmailとPostfixの設定についていろいろと相談いただきこの度やっとPostfixの設定ができる段取りができました。
Postfixの設定は以前にFC5でやっていましたが、Ubuntu/Debianではいろいろと設定が違う部分があるので、いろいろと質問させてください。
最初に、UbuntuではPostfixをapt-getでインストールした時点でSendmailが自動的に停止(削除?)されるという風に伺いましたが、Postfixインストール直後から確かにbashやperlからのコマンドラインからはメールの送信ができなくなりましたが、プロセスを確認すると、
# ps aux | grep sendmail
root 2476 0.0 0.1 9072 1812 ? Ss Jan28 0:02 sendmail: MTA: accepting connections
root 14928 0.0 0.0 2800 800 pts/0 R+ 20:39 0:00 grep sendmail
という風になっていて未だ動いている感じがします。こういった場合はMTAの切り替えは皆様は通常どんな風に行うのでしょうか?
またメールのログでは、
Jan 29 20:10:01 myhost postfix/postdrop[9840]: warning: unable to look up public/pickup: No such file or directory
となっていて、# postfix reloadをすると起動していない旨を伝えられます。またメールのエラーログでも、
Jan 29 20:38:30 lily postfix/postfix-script[14891]: fatal: the Postfix mail system is not running
なので、たぶん起動していないんだと思います。
sendmailからPostfixに切り替えたいと思っているのですが、どうすればよいでしょうか?sendmailのアンインストールという話もありましたがそこら辺りの知識がないのでどのパッケージをアンインストールしてよいのかわからないので、できればただ単に停止できる方法があれば幸いです。(あるいは、また元に戻すことができればうれしいです。)
Postfixのバージョンも最新のもので、Ubuntu 9.10で設定しています。localとLAN内にメールの送信を可能にするような簡単な設定をしております。(暗中模索しながら設定している最中です。)
よろしくお願いします。
オフライン
以前のスレッドでも、疑問だったので、今回、デスクトップに、(先に)sendmailと(後に)postfixをインストールしてみました。
すると、postfix インストール時に
sendmail を削除しています ...
dpkg: sendmail-bin: 依存関係に問題があります。しかし要求に従い削除しています:
sensible-mda は以下に依存 (depends) します: sendmail-bin | mail-transport-agent ...しかし:
パッケージ sendmail-bin は削除されようとしています。
パッケージ mail-transport-agent はまだインストールされていません。
パッケージ sendmail-bin は mail-transport-agent を提供していますが、削除されようとしています。
パッケージ postfix は mail-transport-agent を提供しますが、まだインストールされていません。
sensible-mda は以下に依存 (depends) します: sendmail-bin | mail-transport-agent ...しかし:
パッケージ sendmail-bin は削除されようとしています。
パッケージ mail-transport-agent はまだインストールされていません。
パッケージ sendmail-bin は mail-transport-agent を提供していますが、削除されようとしています。
パッケージ postfix は mail-transport-agent を提供しますが、まだインストールされていません。
bsd-mailx は以下に依存 (depends) します: postfix | mail-transport-agent ...しかし:
パッケージ postfix はまだインストールされていません。
パッケージ mail-transport-agent はまだインストールされていません。
パッケージ sendmail-bin は mail-transport-agent を提供していますが、削除されようとしています。
パッケージ postfix は mail-transport-agent を提供しますが、まだインストールされていません。
sendmail-bin を削除しています ...
man-db のトリガを処理しています ...
ureadahead のトリガを処理しています ...
未選択パッケージ postfix を選択しています。
(データベースを読み込んでいます ... 現在 261664 個のファイルとディレクトリがインストールされています。)
(.../postfix_2.6.5-3_amd64.deb から) postfix を展開しています...
ureadahead のトリガを処理しています ...
ufw のトリガを処理しています ...
man-db のトリガを処理しています ...
postfix (2.6.5-3) を設定しています ...
Postfix was not set up. Start with
cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf
. If you need to make changes, edit
/etc/postfix/main.cf (and others) as needed. To view Postfix configuration
values, see postconf(1).
After modifying main.cf, be sure to run '/etc/init.d/postfix reload'.
libc-bin のトリガを処理しています ...
ldconfig deferred processing now taking place
となりますが
$ ls /etc/rc*|grep mail
K19sendmail
K19sendmail
S21sendmail
S21sendmail
S21sendmail
S21sendmail
K19sendmail
と残っており、postfix を邪魔してます。
そこで、
$ sudo update-rc.d -f sendmail remove
とsendmail と止めて
再度postfixを設定
$ sudo dpkg-reconfigure postfix
setting synchronous mail queue updates: false
setting myhostname: ubuntu.si.dip.jp
setting alias maps
setting alias database
changing /etc/mailname to ubuntu.si.dip.jp
setting myorigin
setting destinations: ubuntu.si.dip.jp, localhost.si.dip.jp, localhost
setting relayhost:
setting mynetworks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
setting mailbox_command
setting mailbox_size_limit: 10000000
setting recipient_delimiter: +
setting inet_interfaces: loopback-only
setting default_transport: error
setting relay_transport: error
setting inet_protocols: all
WARNING: /etc/aliases exists, but does not have a root alias.
Postfix is now set up with a default configuration. If you need to make
changes, edit
/etc/postfix/main.cf (and others) as needed. To view Postfix configuration
values, see postconf(1).
After modifying main.cf, be sure to run '/etc/init.d/postfix reload'.
Running newaliases
* Stopping Postfix Mail Transport Agent postfix [ OK ]
* Starting Postfix Mail Transport Agent postfix [ OK ]
となりました。
やはり、 sendmail 自動起動を止めたのち、不完全な状態で残った、senndmail を再度削除された方がいいかもしれません。
オフライン
>siさん
いつもお世話になっております。いかんせん自分でいろいろと確認する知識がまだまだ足りないので、siさんのコマンドと表示そのままの情報、とても参考になりました。ありがとうございます。
以前にsiさんにpostfixのことでいろいろ教えていただいた際(https://forums.ubuntulinux.jp/viewtopic.php?id=6750)に、#7辺りでPostfixの自動選択について書かれてあります。実は、8.XXぐらいのバージョンだった時にはsiさんが言うようにMTAはPostfixのインストールと同時にsendmailからPostfixに自動的に切り替わっていたような気が僕もするんです。(結局SMTP認証の設定まで行き着かなかったのですが…)いろいろ調べてみると当然のように「自動切り替わり」説がいろんなところで書かれてありましす。9.10からこういう風にsendmailの残骸みたいなものが残っている…ってことなんでしょうか?
もしなんとなく経験のある方がいましたらおしえてください。
siさんの示してくれた方法でやってみます!
オフライン
$ ls /etc/rc*|grep mail
でやってみると、siさんとまったく同じファイルが僕の環境でも残っていました。sendmailの残りファイルをremoveしてからPostfixをreconfigureすると以前と違った形での対話形式のインストールがはじまりました。(殆どmain.cf内で後から設定できる内容ばかりでしたが)
設定後、プロセスを確認してみしたが、sendmailはremoveしても動き続けているみたいです。とりあえず、
# /etc/init.d/sendmail stop
でもって止めてからPostfix再起動でうまく行きました!!
# psotfix relaodから、
postfix/postfix-script: refreshing the Postfix mail system
と出たのでたぶんこれで大丈夫のような気がしています…(限りなく自信はないのですが…)
またご報告します!
オフライン
ばっちり動きました!cronからの自動配信もできたし、mailコマンドからも送信できました!
ありがとうございます。
オフライン
追記::
少々疑問が残ったので質問させてください。
Postfixのインストール&設定後、送信メールサーバーは現在(ローカルとLAN内で)動いています。しかし、その他のプログラム内でSMTPサーバーの指定をするという項目では、SendMailPathとして、/usr/lib/sendmailがそのまま使えます。いろいろな記事で「Postfixはsendmailと相性がいい」というようなことが書かれていますが、Postfixはこれまでのsendmailパスをそのまま継承される…というような認識でいいのでしょうか?
オフライン
postfix パッケージでも sendmail コマンド (/usr/sbin/sendmail および /usr/lib/sendmail) が提供されます
このコマンドは sendmail パッケージに含まれる sendmail コマンドと、ほぼ互換な動作をするように作られています
これは sendmail から postfix への円滑な移行ができるようにすることが目的です
sendmail 以外のメールサーバーアプリケーションはほぼ全て、同様な目的で sendmail コマンドを用意しています
オフライン
>ryさん
なるほど…。相性というのはそういうことだったんですね。ありがとうございます。何となくこれから安心してPostfixが使えそうです。
オフライン