con*_*nny 170 mac-osx osx-leopard service launchd
如何重新启动,例如我的 httpd 或 afpd,运行任何 Mac OS X >= 10.5 (Leopard-),而无需使用 GUI 并转到系统偏好设置 -> 共享并取消选中/选中“网络共享”?
我正在寻找与 Debian 的invoke-rc.d apache2 restart.
编辑:问题是关于一般的启动控制服务,而不是特别是 Apache(-这只是一个例子)。
nay*_*den 184
launchctl(8) 是你的朋友。请记住,配置文件中禁用了某些服务(例如 sshd),因此您需要-w在加载它们时使用开关。这是一个 sshd 示例:
$ sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
Run Code Online (Sandbox Code Playgroud)
您可以使用unload子命令停止服务。
$ sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
Run Code Online (Sandbox Code Playgroud)
要列出服务,您可能已经猜到了,请使用“list”子命令;)
小智 17
要重新启动服务,您可以使用launchctl kickstart命令和-k选项。例如,要重新启动 apache,您可以使用
sudo launchctl kickstart -k system/org.apache.httpd
Run Code Online (Sandbox Code Playgroud)
此信息来自launchctl手册页:
Run Code Online (Sandbox Code Playgroud)kickstart [-kp] service-target Instructs launchd to run the specified service immediately, regardless of its configured launch conditions. -k If the service is already running, kill the running instance before restarting the service. [...]
小智 9
你可以简单地做
sudo launchctl stop com.openssh.sshd
Run Code Online (Sandbox Code Playgroud)
如果你不知道完整的服务名称,你可以这样做
sudo launchctl list
Run Code Online (Sandbox Code Playgroud)
如果您仍然没有找到您期望的服务,请尝试在没有 root 身份的情况下运行:
launchctl list
Run Code Online (Sandbox Code Playgroud)
而且您不需要卸载和加载服务。
| 归档时间: |
|
| 查看次数: |
438661 次 |
| 最近记录: |