MacPortsでlaunchdのサービスをインストール

MacOSX 10.4 以降で、 MacPortsで apache2 や postgresql82-server をインストールすると、 /opt/local/etc/LaunchDaemons に launchd 用のスクリプトが配置されます。

launchctl でこれらのサービスを実際に launchd に登録します。

plist を編集する

インストール直後の状態では、設定項目 OnDemandが false になっていることがあるようです。
この場合、launchctl でサービスを停止することができないです。

OnDemand
This optional key is used to control whether your job is launched based
on demand or to be kept continuously running. The default is true.

(from: man launchd.plist)

これをtrueに設定して、ロードしましょう。

vi /opt/local/etc/LaunchDaemons/org.darwinports.apache2/org.darwinports.apache2.plist 
        <key>OnDemand</key>
        <true/>
launchctl load -w /opt/local/etc/LaunchDaemons/org.darwinports.apache2/org.darwinports.apache2.plist