NetMute

distnotedはMacで何ですか?通知デーモンの解説

アクティビティモニタを開いて、distnotedという名前のものを見つけたかもしれない。もしかすると三つか四つあったかもしれない。ひとつが目立つ程度のCPUを使っていたこともある。名前だけでは何もわからず、検索するとフォーラムのスレッドが「完全に正常」だとか、マルウェアをぼんやり示唆しているものが見つかる。 短い説明:distnotedはmacOSの標準の一部で、Appleによって署名されており、完全にあなたのマシン内で動作している。実際に何をしているのか、なぜ複数見かけるのか、それが高いCPU使用率を示す意味、そしてそれがインターネットと実際に通信しているプロセスとは異なるカテゴリーに属している理由について解説する。

5分で読める更新日

distnotedが実際に何か

distnotedはmacOSに標準で搭載されている分散通知デーモンだ。その役割は、あるプロセスが変更をブロードキャストしたときに、他のプロセスにその情報を伝えることだ。

その仕組みは分散通知システムであり、開発者にはNSDistributedNotificationCenterとして公開されている。電話の呼び出しというよりは掲示板のようなものだ。アプリやシステムコンポーネントが、「これが変わった」と短いメッセージを投稿し、その種類のメッセージに関心を持つプロセスにコピーを渡す。お互いが存在を知る必要はない。distnotedはその中継役で、誰がリスニングしているかのリストを管理し、メッセージを渡す役割を果たしている。

通知されるイベントは普通のもので、設定の変更、デバイスの接続、ユーザ設定の切り替えなどだ。アプリはこれを利用して、システムの他の場所で行われた変更にリアクションを取る。常にポーリングする必要はない。これは地味な配線のようなもので、インターフェースもドキュメントもエンドユーザ向けには用意されていない。Apple純正のバイナリで、Appleによってコード署名されており、すべての最新のmacOSインストールに含まれている。あなたがインストールしたものではない。

なぜそれを見ているのか、そしてほとんどの人が必要とする修正

ほとんどの人はdistnotedを同じように誤解している:何かが遅く感じられ、Activity Monitorが表示され、見慣れない名前が怪しいと感じる。名前がほとんどのダメージを与える。「distnoted」は略語のように読めるが、多くの人が推測しがちなのはネットワークの意味でのdistributed(分散された)、つまりリモートサーバーやマシン同士が通信している状態だ。

その推測は間違いであり、それを正すことがこの記事の最も役立つ点だ。distnotedはあなたのローカルマシン上のプロセス間通信であり、ネットワークトラフィックではない。 ここでの「Distributed(分散)」は、ネットワーク上ではなく、あなたのMac上で動作しているプロセス間に分散していることを意味する。デーモンはインターネットにダイヤルアウトしたり、何かを取得したり、どこかに報告したりしない。その全宇宙はあなたの前にあるマシン上のプロセス群だけだ。

これは重要だ。なぜなら、多くの人がこの名前を検索しているとき、ネットワーク活動を監査している最中だからだ。彼らは説明できない接続を見つけ、実行中のプロセスを調べ、そのトラフィックを見慣れない名前に結びつけている。もしあなたがそうなら、その帰属はほぼ間違いだ。distnotedは最初からその能力を持っていないし、その接続を開いたのは別の何かだ。

それはマルウェアなのか、そしてなぜ複数のコピーが存在するのか

distnotedはマルウェアではない。それはmacOSに長年組み込まれているAppleのシステムデーモンだ。マルウェアは時折、正当なシステムプロセスの名前を借りて目立たなくなることがあるので、確認するのは合理的な行動だし、何もインストールせずに自分で判断できる。

Activity Monitorで、distnotedのエントリーをダブルクリックして情報ウィンドウを開く。そこには親プロセス、メモリ統計、開いているファイルが表示される。本物のシステムデーモンは、奇妙なブラウザやダウンロードしたアプリのようなものではなく、妥当な起動チェーンを示し、あなたのDownloadsやDesktopフォルダから実行されていることはない。より確実な確認方法として、Terminalのcodesignコマンドは実行中のバイナリの署名権限を報告し、実際のdistnotedの署名はAppleに遡る。

もう一つ疑わしい兆候は、複数のdistnotedプロセスが同時に見られることだ。これは正常だ。デーモンはセッションごとやコンテキストごとに動作し、単一のシステム全体のインスタンスとして動作しないため、ログイン中のユーザーとさまざまなバックグラウンドコンテキストを持つマシンでは、いくつかのプロセスが表示される。3つ、4つ、あるいはそれ以上も珍しくない。これらは通常、User列に異なるアカウントを示し、システムアカウントも含まれる。これが、それらが別々のコンテキストであり、重複ではない証拠だ。正常な動作では、それぞれのdistnotedはほぼゼロのCPUを使用している。アイドル状態のdistnotedプロセスの列は健康な状態を示している。

distnotedが高いCPUを使用しているとき

時々distnotedが見えなくなり、実際のCPUを消費し始めることがあります。時にはファンを回すほどです。そのとき、重要なのはdistnotedは通常原因ではなく症状であるということです。

何をしているのか思い出してください:他のプロセスが投稿したメッセージを中継します。もし一生懸命動作しているなら、多くのメッセージを投稿している何かがあります。あるアプリケーションが通知をブロードキャストし、それに反応し、再びブロードキャストし、または一度で済む変更を何百回も通知しているループに陥っています。デーモンは本来処理すべき量を超えて動作しています。これを終了しても効果は持続しません。macOSは再起動し、騒がしいアプリはすぐに再開します。

原因を見つけるには、排除のプロセスが必要です。Activity MonitorをCPUで並べ替え、同時に高くなっている他の項目を確認してください。しばしば、上位にもう一つのプロセスがあり、それが候補です。同期クライアント、クリップボードマネージャ、メニューバーユーティリティ、古いサードパーティの設定パネル、再起動せずに長期間動作しているアプリが一般的な繰り返し犯です。疑わしいものを一つずつ終了させて、distnotedが落ち着くか観察してください。

明らかな原因が見つからない場合は、Macを再起動してください。これにより長時間稼働によるループがクリアされ、多くのケースが解決します。挙動が戻り、特定のアプリに関連している場合は、そのアップデートを確認してください。distnoted自体を無効化またはブロックしようとするのは無駄です。プロセス間通知は通常の動作に必要であり、macOSはそれを復元します。あなたはメッセンジャーではなく送信者を対象にすべきです。

ローカルプロセスと実際に外部に接続するプロセス

ここでの不安はデーモンそのものではありません。Activity Monitorに長いリストで暗号化された名前のプロセスが表示され、それらがネットワークに触れているかどうかを判断できないことです。すべてが同じように疑わしく見えるため、見慣れない名前は疑問符になり、その疑問符が午後の検索の原因となります。

これを解決するのは簡単です。Mac上で動作しているほとんどはローカルです:distnotedのようなデーモンは、プロセス間でメッセージを中継し、ファイルをインデックスし、ウィンドウを管理し、オーディオを処理します。これらはソケットを開きません。本当に外部に接続するのはごく少数で、その少数だけが注目に値します。二つを分離することで、見慣れない名前の壁が短く、確認しやすいリストに変わります。

NetMuteはその分離のために作られています。リアルタイムのアプリごとおよびプロセスごとのネットワーク活動を表示し、どのプロセスが実際に外向きの接続を行い、どのドメインに到達しているかを確認でき、履歴も記録しています。ネットワークの次元を持たないプロセス、distnotedも含めて、ネットワーク活動として表示されません。これがあなたがここにいる理由への答えです。接続しているものについては、NetMuteにはワンクリックでブロックできるアプリごとのファイアウォールと、一時的なルールも含まれています。

範囲について明確にしておきます:これらすべてがdistnotedに適用されるわけではありません。distnotedはネットワーク側を管理しないため、NetMuteはブロックや管理を行いません。価値は逆方向にあります。実際にインターネットと通信しているプロセスが見えれば、多くの通信を気にする必要はなくなります。NetMuteはMac App Storeから無料でダウンロードでき、Premiumはサブスクリプションなしのシングルインアプリ購入です。

distnotedに関するよくある質問

実際に接続しているプロセスを確認する

NetMuteは、あなたのMac上でリアルタイムのアプリごとのネットワーク活動とドメインレベルのログを表示します。これにより、インターネットと通信しているプロセスと、あなたのマシンを離れないものを区別できます。Mac App Storeで無料で提供されており、オプションの一度きりのアプリ内課金とサブスクリプションはありません。

NetMuteをダウンロード