AI Summary 125.20537.5 brew services摘要 2026-10-09
macOS 用 launchctl 命令加载开机自动运行的服务 brew service 简化 lauchctl 操作 brew services 管理系统服务

brew services

什么是brew services?
brew services是Homebrew 的命令行工具
用于管理通过Homebrew安装的软件服务

自动配置并 启 停 后台服务 支持 系统启动时 自动运行服务

配置文件目录
/Library/LaunchDaemons # 开机自启,需要sudo
~/Library/LaunchAgents # 用户登录后自启
/Library/LaunchDaemons/llama.cpp.plist为例

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>KeepAlive</key>
	<false/>
	<key>Label</key>
	<string>llama.cpp</string>
	<key>ProgramArguments</key>
	<array>
			<string>/opt/homebrew/bin/llama-server</string>
			<string>run</string>
			<string>-m</string>
			<string>/Users/magan/model/qwen3.5-2b-q4km.gguf</string>
			<string>--host</string>
			<string>0.0.0.0</string>
			<string>--port</string>
			<string>8080</string>
			<string>--timeout</string>
			<string>0</string>
	</array>
	<key>RunAtLoad</key>
	<false/>
	<key>StandardErrorPath</key>
	<string>/Users/magan/llama.cpp/llama.cpp.error.log</string>
	<key>StandardOutPath</key>
	<string>/Users/magan/llama.cpp/llama.cpp.log</string>
	<key>WorkingDirectory</key>
	<string>/Users/magan/llama.cpp</string>
</dict>
</plist>



常用命令

brew services list # 查看使用brew安装的服务列表
brew services run formula|–all # 启动服务(仅启动不注册)
brew services start formula|–all # 启动服务,并注册
brew services stop formula|–all # 停止服务,并取消注册
brew services restart formula|–all # 重启服务,并注册
brew services cleanup # 清除已卸载应用的无用的配置



基本使用方法
要查看所有通过Homebrew管理的服务状态
brew services list

这个命令会显示服务名称、状态、用户和plist文件位置等信息


启动服务
启动一个服务非常简单

例如启动MySQL

brew services start mysql


如果需要管理员权限(如绑定特权端口)
可以使用sudo
sudo brew services start nginx

停止服务
停止服务的命令与启动类似:
brew services stop mysql


重启服务
当你更新了服务配置或需要重启服务时
brew services restart mysql


开机自动启动服务
要让服务在系统启动时自动运行
使用start命令时加上–all选项可以启动所有服务 或者单独指定服务:
brew services start mysql --all


查看服务日志
服务日志是排查问题的重要工具
默认情况下
日志文件位于$(brew --prefix)/var/log/目录下
你也可以在服务配置中自定义日志路径
如前面示例所示
查看日志的常用命令:
tail -f $(brew --prefix)/var/log/mysql.log

检查服务配置
如果服务无法启动
可以检查生成的服务配置文件:
macOS: ~/Library/LaunchAgents/homebrew.mxcl..plist
Linux: /etc/systemd/system/homebrew..service
重新加载服务配置
在修改了服务配置后
需要重启服务使配置生效:

brew services restart

如果是手动修改了服务文件(不推荐)则需要重新加载系统服务管理器:
macOS: launchctl unload ~/Library/LaunchAgents/homebrew.mxcl..plist
Linux: sudo systemctl daemon-reload


使用别名简化操作
可以为常用的brew services命令设置别名
简化操作
在你的shell配置文件(如.bashrc或.zshrc)中添加:

alias bs=“brew services”
alias bsl=“brew services list”
alias bss=“brew services start”
alias bst=“brew services stop”
alias bsr=“brew services restart”

设置别名的方法符合docs/Tips-and-Tricks.md中介绍的Homebrew使用技巧

配合Shell补全使用
为了提高效率
建议启用Shell补全功能
Homebrew提供了brew命令的补全定义
配置方法请参考docs/Shell-Completion.md

启用补全后
输入brew services并按下Tab键
会显示可用的子命令和已安装的服务名称
极大提高操作速度


服务的批量操作
brew services支持批量操作
例如停止所有服务:

brew services stop --all

或者重启所有服务:
brew services restart --all

总结
brew services是一个强大而灵活的服务管理工具