dovecotをeth0:1、eth0:2等のサブインターフェースを使い動作させているのだけど、自動起動に失敗していた。 インターフェースの初期化よりも先にdovecotが起動されるらしく、エラーログ(/var/log/mail.err)に次のようなエラーが記録されていた。
Mar 22 20:23:30 hostname dovecot: bind(192.168.110.1, 143) failed: Cannot assign requested address
start on filesystem and net-device-up IFACE=eth0:1
正直Upstartの方法はちょっと面倒臭いので、多分互換性維持の為に残されていると思われるrc.d(/etc/init/rcで起動される)に起動スクリプトを置いたほうが分かりやすいかも知れない。Ubuntu Desktop版のようにクライアント用途で、利用者が起動スクリプトを配置することが無いのであれば、起動時間の短縮やホットプラグデバイスの利用を考えてUpstartを採用した方が良いと思われるのだが。
正直、SystemV系UNIXの /etc/rc*.d/に/etc/init.d/*へのシンボリックリンクを張って自動起動を制御するとか、RedHat系のchkconfigで自動起動のOn/Offが簡単に行える環境、BSD系のrc.localとかにNAMED=ONとか書くだけの簡単なやりかたに馴れすぎていてSolaris10のsvcadmやUbuntuのUpstart、MacOSXのLaunchchtなんか面倒で仕方無いのだけれど。
コメント