Macの起動が遅くなる理由
購入したばかりのMacは、macOS以外にほとんど何も起動しません。何年も使ううちに、アプリがログインのたびに動くものを追加していきます。新しいバージョンを確認するアップデータ、メニューバーのアイコンを維持するヘルパー、同期ツール、一度だけ入れて忘れてしまったサービス。それぞれがMacと一緒に起動してバックグラウンドで動き続け、メモリとCPUを使います。多くは、めったに開かないアプリのためのものです。
その多くはlaunch agentです。~/Library/LaunchAgentsにある小さな.plistファイルで、どのプログラムをいつ起動するかをmacOSのlaunchdに伝えます。Dockには表示されず見落としやすく、インストールしたアプリが削除されたあとも残っているものがあります。
すべてのlaunch agentを、所属するアプリとともに表示
Startup Itemsは、ライブラリ内のlaunch agentを一覧表示します。各行には、実行するプログラムがアプリ内にある場合はそのアプリの名前とアイコンが、そうでない場合はラベルから取り出した読みやすい名前が表示されます。たとえばhomebrew.mxcl.postgresql@17はpostgresql@17と表示されます。その下には完全なラベルと起動するプログラムのパス、そしてEnabledかDisabledかを示すラベルがあります。
スタートアップ項目を削除せずにオフにする
項目のスイッチを切ると、Tidy My Macはそのジョブをすぐに停止し、ファイルを.plist.disabledとして脇に置くので、launchdはログイン時にそれを起動しなくなります。何も削除されません。スイッチを戻せばファイルが復元されてジョブが再読み込みされ、再起動は不要です。アプリの動作が思わしくなくなったときも、agentを元に戻すのはワンクリックです。
どのスタートアップ項目をオフにできますか?
一覧を見ていくときの目安をいくつか挙げます。
- 使わなくなったアプリ。見覚えがない、または数か月開いていないアプリなら、そのagentは無駄に動いています。
- アップデータ。多くのアプリは開いたときにもアップデートを確認するため、1日中動いている別のアップデータはあまり意味がありません。
- 1つのプロジェクトのために起動したサービス。Homebrewでインストールしたデータベースや開発用サーバは、停止するまでログインのたびに起動し続けます。
- 頼りにしているもの。バックアップ、同期、パスワードマネージャ、入力デバイスのagentは、それがなくてもアプリが動作すると分かっている場合を除き、オンのままにしてください。
各行のプログラムのパスを見れば、実際に何が動いているかが分かります。名前だけでは判断できないときに役立ちます。
agentをアプリごと完全に削除するには、Uninstallerを使います。すでに削除したアプリが残したagentも見つけられます。
ログイン時に開くアプリ
ログイン時に開くよう設定したアプリや「バックグラウンドでの実行を許可」に表示されるアプリは、macOSが独自のデータベースで管理していて、システム設定からしか変更できません。Startup Itemsはそれを取り繕わず、Open Login Itemsボタンから、システム設定 → 一般 → ログイン項目と機能拡張へ直接移動して、そこで管理できます。
すべてのユーザに対して動作する/Library内のシステム全体のagentとdaemonは、現在の状態とともにBackground Servicesに一覧表示されます。
実測した起動時間
Tidy My Macは推測ではなく、起動のたびに計測します。カーネルが起動した瞬間から、ログインしてDockとFinderが立ち上がるまでです。再起動ごとに1回計測を記録し、平均起動時間と、直近の起動を日付順に表示するので、項目をオフにして変化があったかどうかが分かります。ログインウインドウで長時間待機していた起動は集計に含まれないため、平均が歪むことはありません。同じ数値はPerformanceにも表示されます。
Macで新しいものが起動するときに通知を受け取る
設定でTell me when an app adds a background itemをオンにしていると(デフォルトでオンです)、Tidy My Macが開いている間にlaunch agent、launch daemon、特権ヘルパー、ログイン項目がインストールされたとき、また閉じている間に追加されたものについては次回起動時に通知します。起動した時点で既にあったものは報告されません。通知からは、その項目をShowで表示したり、launch agentをDisableで無効にしたり、Scan with Antivirusでスキャンしたり、Don't Tell Me Again for This Appを選んだりできます。
ログイン時の常駐は、不審なソフトウェアが動き続けるための手口です。見覚えのないlaunch agentは確認する価値があります。AntivirusのQuick scanでも~/Library/LaunchAgentsをチェックします。
Startup Itemsに関するよくある質問
たいていは安全ですが、アプリによります。多くはアップデータやヘルパーで、アプリがなくても動くもの、またはアプリを開いている間だけ意味があるものです。同期やバックアップのツールでは、同期が止まることがあります。オフにするのはファイル名を変更するだけなので、アプリで不具合が出たときはいつでもオンに戻せます。
ログイン時に開くアプリは、システム設定 → 一般 → ログイン項目と機能拡張で管理します。Startup Itemsはそのページを開いてくれます。ライブラリ内のlaunch agentはDockに表示されず、Startup Items内でオフにします。
カーネルの起動タイムスタンプから、ログインしてDockとFinderが起動するまでを、再起動ごとに1回計測します。計測はMac上で行われ、Macの中に保存されます。
いいえ。ご自身のライブラリにあるlaunch agentはご自身のものなので、オン/オフの切り替えにパスワードは不要です。
すべてのセクションを7日間無料でお試しください。
必要なのはメールアドレスだけで、クレジットカードは不要です。その後は、最初の1年間が$19.99、2年目以降は年間$59.99です。
無料トライアルを始める