Manage Background Services with brew services

brew services wraps launchd to show and control Homebrew-installed daemons — forgotten because the table hides the launchctl plumbing.

macOSbrewlaunchdservicesLow risk
Run `brew services list` to see daemon status, then `brew services stop redis` or `brew services start redis` to toggle one.

01Command

Command
$ brew services list && brew services stop redis

02What it does

Every brew-installed formula with a plist (databases, web servers) can run as a launchd agent, and brew services is the human interface to those — list shows Status (started/error), User, and the plist path. Services started with sudo land in the system domain and need sudo to manage, while user services run at login. `brew services run` starts a service once without registering it for auto-start, which is handy for debugging.

03Risk

RiskLow risk
RequirementsHomebrew (https://brew.sh)
!Warning: Forgotten running services keep occupying ports and RAM — audit the list after big cleanups.

04Undo

Undo
$ brew services start redis

05Sources

  • Homebrew/homebrew-services
    Homebrew · community · 2026-09-17
    Evidence: The brew services command: list/start/stop/restart formulae as launchd services for the user or root.

Last verified: 2026-09-17 · Category: Developer

06Related solutions