🤖

Homebrewで管理されているすべてのサービスを一覧表示する方法

2024/07/02に公開

はじめに

Homebrew(略してBrew)は、macOSで使えるパッケージ管理システムです。Homebrewを使えば、様々なソフトウェアやライブラリを簡単にインストール、アップデート、アンインストールすることができます。

この記事では、Homebrewを使ってインストールおよび管理できるデーモン化されたサービスを一覧表示する方法について詳しく説明します。

Brewのサービス管理とは

デーモン化されたサービスとは、バックグラウンドで動作するプロセスのことを指します。例えば、データベースのPostgreSQLやMySQL、メールキャプチャツールのMailHogなどが該当します。

macOS上でこれらのサービスを管理するために、Homebrewはlaunchctlというシステムツールを使用します。launchctlはサービスの起動、停止、再起動を行うためのツールです。

インストール済みのサービスを確認する方法

Homebrewでサービスをインストールした場合、brew services listコマンドを使って、現在インストールされているサービスとその状態を確認できます。このコマンドを実行することで、どのサービスが実行中で、どのサービスが停止中かを一目で把握できます。

$ brew services list
Name          Status  User       File
mailhog       none
mysql         none
postgresql@11 started jbranchaud ~/Library/LaunchAgents/homebrew.mxcl.postgresql@11.plist
postgresql@13 none
postgresql@16 none
unbound       none

上記の出力例では、postgresql@11が実行中で、他のサービスはすべて停止しています。特に複数バージョンのPostgreSQLがインストールされている場合に、どのバージョンが動作しているかを確認するのに便利です。

サービスの開始と停止

特定のサービスを開始または停止したい場合は、brew services startおよびbrew services stopコマンドを使用します。例えば、postgresql@11を停止してpostgresql@16を開始するには、以下のコマンドを順に実行します。

$ brew services stop postgresql@11
Stopping `postgresql@11`... (might take a while)
Successfully stopped `postgresql@11` (label: homebrew.mxcl.postgresql@11)
$ brew services start postgresql@16
Starting `postgresql@16`... (might take a while)
Successfully started `postgresql@16` (label: homebrew.mxcl.postgresql@16)

これにより、現在のPostgreSQLバージョンを切り替えることができます。

その他の便利なコマンド

Homebrewには、他にもいくつかの便利なコマンドがあります。例えば、すべてのサービスを一度に再起動したい場合は、brew services restart --allコマンドを使用します。また、特定のユーザーでサービスを実行したい場合は、--userオプションを付けることができます。

$ brew services restart --all
$ brew services start postgresql@16 --user=<username>

まとめ

Homebrewを使ってデーモン化されたサービスを管理する方法について紹介しました。brew services listコマンドを使えば、インストールされているサービスとその状態を簡単に確認できます。また、サービスの開始、停止、再起動もコマンド一つで行えるため、非常に便利です。詳細なコマンドオプションについては、brew services --helpを参照してください。

フリーランスエンジニア必見!

最後に、フリーランスエンジニアの方にご案内です。
あなたに今だけご紹介できる限定の案件があります!

気になる方は公式ラインの追加をお願いします👇
https://bit.ly/3xLrLGw

Discussion