回答:
OS Xはlaunchctl
、起動時にどのデーモンを開始するかを制御します。
Apacheを停止して無効にするには:
次のコマンドを入力します(sudo
要求時にログインパスワードを入力します)。
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
launchctl
の-w
オプションに関するいくつかの言葉
この-w
オプションは、Apacheを停止/無効にするための特効薬です。以下にlaunchctl
説明されているように、サービスをアンロードできないようにする構成設定に関係なく、ジョブを実行するように指示しますman launchctl
。
-w Overrides the Disabled key and sets it to false or true for the load and
unload subcommands respectively. In previous versions, this option would
modify the configuration file. Now the state of the Disabled key is stored
elsewhere on- disk in a location that may not be directly manipulated by any
process other than launchd.
(OS X Mavericks(10.9)では、「ディスク上の他の場所」が/private/var/db/launchd.db/com.apple.launchd/overrides.plist
。
このスーパーユーザーの回答で説明されているように、-w
Apacheをapachectl start
以下で起動した場合、このオプションは不可欠です。Apacheを起動するだけでなく、次のように変更します。apachectl
/private/var/db/launchd.db/com.apple.launchd/overrides.plist
<key>org.apache.httpd</key>
<dict>
<key>Disabled</key>
<false/>
</dict>
この特定のケースでは、以下も使用できますapachectl
。
sudo apachectl stop
Apacheを停止し、に設定Disabled
しtrue
ます。
-w
:sudo launchctl -w unload ...
。それでも解決しない場合は、の出力を投稿してもらえますps -ef|grep httpd|grep -v grep
か?
-w
前に試しましたが、同じ結果です。ここでは、出力は次のようになります。pastebin.com/h14t8fEv
sudo launchctl1 ...
、エラーメッセージが返されますか?grep apache /var/log/com.apple.launchd/launchd-shutdown.system.log
and の出力を投稿できますsudo grep apache /var/log/system.log
か?
sudo: launchctl1: command not found
ここに出力されます:pastebin.com/raw.php?i=zxKvYV4i
sudo apachectl start
起動デーモンを実行するたびに、再起動後に再びアクティブ化されるようです。