已编辑 4 几天前 通过 ExtremeHow 编辑团队
自酿软件macOS服务守护进程后台服务终端命令行系统管理自动化生产力
翻译更新 4 几天前
使用 Homebrew Services 是简化后台程序管理的一种方法,这些程序通常称为 macOS 上的服务或守护进程。如果您经常使用 Mac 进行开发,可能需要运行一些后台进程,例如数据库、Web 服务器或其他提供服务的软件。如果您手动管理这些服务,可能会很麻烦。Homebrew Services 可以自动执行此过程,让您轻松启动、停止和重启这些服务。
在操作系统的环境中,服务是指在后台运行以执行任务的程序或进程。与常规应用程序不同,这些应用程序具有用户界面并需要用户的主动交互,服务默默地处理对于系统或其他应用程序至关重要的任务和进程。
对于开发人员而言,服务可以是数据库、缓存层、搜索引擎或他们的应用程序需要运行以正常运行的任意数量的守护进程。好例子包括 PostgreSQL、MySQL、Redis 和 Nginx。Homebrew 是 macOS 上广泛使用的软件包管理器,通过利用其子命令 `brew services` 来帮助管理这些服务。
在使用 Homebrew 服务之前,您必须安装 Homebrew。这是允许您在 macOS 上从命令行安装软件的软件包管理器。您可以在终端中使用以下命令安装 Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
此命令从 GitHub 存储库获取 Homebrew 的最新版本并将其安装在系统上。按照屏幕上的说明完成安装过程。Homebrew 安装完成后,通过以下方式检查版本以确认其成功安装:
brew --version
设置 Homebrew 后,下一步是创建 Homebrew 服务本身。通过 Homebrew 本身内置对后台服务管理的支持;您无需单独安装“Brew Services”。
要验证 brew services 是否可用,您可以在终端中输入以下内容:
brew services list
如果命令运行没有任何错误,则表示 brew services 可用并可以使用。此命令将列出您当前通过 Homebrew 安装的所有服务及其当前状态。
Homebrew Services 的命令语法很简单:brew services [COMMAND] [SERVICE]
。以下是常用命令的说明。
要启动服务,请使用以下命令:
brew services start <service-name>
例如,如果您想启动 PostgreSQL 数据库服务,则可以运行:
brew services start postgresql
此命令将启动 postgresql 服务并将其配置为在登录时自动启动。这对于您一直使用且希望在每次启动系统时不必手动启动的服务非常有用。
要停止服务(可能是因为您不再需要它运行),请使用:
brew services stop <service-name>
要在保持 PostgreSQL 实例运行的情况下停止此操作,请执行以下操作:
brew services stop postgresql
这将停止服务,但不会禁止其在下次启动时自动重启(如果设置为默认启动)。
如果您更改了服务的配置并希望应用这些更改,请使用以下命令重新启动服务:
brew services restart <service-name>
例如:
brew services restart postgresql
这将停止并重启服务,并应用任何更改而无需重新启动。
服务可以配置为在系统启动时启动,从而确保它们在您需要时运行。`brew services start` 命令已经自动完成此操作。但是,如果您已停止服务或禁用了启动引导功能,并希望重新启用它,请使用:
brew services start --all
这将启动由 brew 管理的所有服务,并设置它们在启动时启动。
要全面了解通过 Homebrew 安装的所有服务、其状态(正在运行或停止)以及是否设置为启动引导,请使用以下命令:
brew services list
此命令提供了一般视图,列出所有可用服务,指定哪些服务正在运行及其相关端口(如果适用)。
Homebrew Services 使用启动代理或启动守护进程来管理服务。以下是服务引用工作原理的简要描述:
- 用户服务:由用户启动并在用户会话上下文中运行的服务。这些服务在用户注销时停止。
- 系统服务:在 root 用户上下文中运行的服务,可以在系统引导时启动。它们在用户登录和注销期间持续存在。
如果您不再需要特定服务并希望将其从系统中完全移除,这很容易做到:
brew uninstall <service-name>
这将移除该服务,但请记得先停止它再卸载。例如:
brew services stop postgresql && brew uninstall postgresql
尽管 Homebrew 使用简单,您在管理服务时可能会遇到问题。以下是一些常见的故障排除提示:
如果服务启动失败,请检查以下内容:
/usr/local/var/log/
目录中的日志以获取更多详细信息。如果服务没有在启动时启动,请尝试重新启用它:
brew services restart <service-name>
如果收到权限被拒绝消息或类似错误:
Homebrew Services 是开发人员和用户在 macOS 上管理后台服务的高效便捷功能。能够通过一两个命令轻松启动、停止和重启服务,在管理复杂设置时节省了时间并减少了错误。借助这种简单的界面,Homebrew Services 帮助 Mac 用户确保其开发环境始终顺利运行,从而有助于提高生产力并减少停机时间。
如果你发现文章内容有误, 您可以