ゴーストデバイスがホームアシスタントサーバーに出没しています – それらをクリーンアップする方法は次のとおりです

in tech

ホーム アシスタント サーバーが憑依されている可能性があります。実際のゴーストによるものではなく、デバイスや統合が削除された後でもホーム アシスタントに表示されるゴースト デバイスやエンティティによるものです。良いニュースは、無許可の核加速器を背中に背負わなくても、これらの幽霊を倒すことができるということです。

そもそもゴーストデバイスはどのようにして発生するのか

ホーム アシスタントを初めて使い始めるときは、興奮して、可能な限りあらゆるデバイスを追加し始めるのは簡単です。ホーム アシスタントは多くの場合、ネットワーク上のスマート ホーム デバイスを自動的に識別し、接続することを提案します。気が付けば、何百ものデバイスとエンティティが存在する可能性があります。

時間が経つと、使用していないスマート ホーム デバイスや、不要になったホーム アシスタントの統合を削除し始める可能性があります。その過程で、統合や自動化に関連付けられていないにもかかわらず、残留する不要なデバイスやエンティティの削除に失敗する可能性があります。

スマート ホーム デバイスに囲まれた Home Assistant Green スマート ホーム ハブ。 クレジット: home-assistant.io

ゴースト デバイスおよびエンティティは、MQTT ブローカーの使用からも発生する可能性があります。デバイスが保持フラグを有効にしてデータを公開すると、ブローカーは最後のペイロードを保持し、Home Assistant が再接続した後にそれを再送信します。その後デバイスを削除した場合、この古いデータにより、デバイスがまだ存在しているように見える可能性があります。

ゴースト デバイスのその他の潜在的な原因としては、Z-Wave ペアリングの失敗などの問題があります。ペアリングが失敗した場合でも、Z-Wave コントローラーは内部データベースにノードを登録し、ホーム アシスタントが使用できないデバイスとして表示する場合があります。また、Amazon Alexa や Home Assistant などのシステム間で共有されている Matter デバイスが原因で発生することもあります。一部の共有設定では、1 つのコントローラーからデバイスを削除しても、必ずしもすべての場所から削除されるわけではないため、デバイスがホーム アシスタント インスタンスに取り残される可能性があります。

ゴーストデバイスとエンティティの検索

ゴースト デバイスとエンティティを探す最初の場所は、ホーム アシスタント設定の[デバイスとサービス]セクションです。フィルターを使用すると、ホーム アシスタントでまだ使用しているものに属していないと思われるエンティティを見つけることができます。

[設定]>[デバイスとサービス]に移動し、画面上部の[エンティティ]タブをクリックします。フィルターアイコンをクリックし、「ステータス」を選択し、「使用不可」、「管理不可」、および「提供されていません」のチェックボックスをオンにします。

結果を調べて、認識できないエンティティ、または削除した統合にリンクされているエンティティを探します。すべての結果がゴースト エンティティになるわけではありません。単純に接続が失われたり、統合の再認証が必要な場合もあります。どの統合がエンティティを作成したかを確認することもできます。

見覚えのないエンティティを見つけて、それが幽霊である可能性があると考えた場合は、すぐに削除しないでください。デューデリジェンスを行う前に、それらすべてと、それらを作成した統合をメモしてください。

何かを削除する前に安全性監査を行う

ゴースト デバイスとエンティティをクリーンアップすることは、ホーム アシスタント インスタンスを詰まらせる以外の目的がないため、推奨されます。見つかったものをすべて削除する前に、いくつかの予防措置を講じる必要があります。

まず、現在の状態のバックアップを作成して、動作が停止した場合に動作状態にロールバックできるようにします。削除する予定のものをすべてメモしておき、問題が発生した場合にバックアップから復元し、特定のデバイスとエンティティを所定の位置に残せるようにします。

MacBook Air上で動作するホームアシスタント。 クレジット: Adam Davidson / How-To Geek

オートメーションやスクリプトなど、削除するエンティティに依存する可能性のあるものをすべて検索します。これらのエンティティを参照している可能性のあるダッシュボードを確認してください。

潜在的なゴースト デバイスの履歴をチェックして、何かが最後に変更または更新された時間を確認します。最近更新された場合は、結局のところ、幽霊ではない可能性があります。一時的にアクセスできなくなっている可能性があります。確信が持てない場合は、デバイスを削除するのではなく、いつでもデバイスを無効にして、何が壊れているかを確認することを選択できます。

幽霊をやっつける時が来た

幽霊を見つけたと確信したら、それらを削除してみます。不要な統合から始めるのが最適です。これらを削除すると、関連するデバイスとエンティティもすべて削除されますが、常にそうであるとは限りません。不要な統合を削除するには、[設定]>[デバイスとサービス]に移動し、統合を選択し、三点アイコンをクリックして、[削除]を選択します。

次の手順では、メモした、まだ表示されている問題のあるデバイスを削除します。これにより、デバイスと関連エンティティが削除されます。[設定]>[デバイスとサービス]に移動し、画面上部の[デバイス]をクリックします。選択モード アイコンをクリックし、削除するデバイスを選択します。三点アイコンをクリックし、「選択した項目を削除」をクリックします。

「選択した項目を削除」オプションがグレー表示になっている場合があります。これは、親統合がまだアクティブである場合、またはデバイスがconfiguration.yaml ファイルにハードコーディングされている場合に発生する可能性があります。一部の統合では、ホーム アシスタントでデバイスを削除する前に、ベンダー アプリからデバイスを削除する必要がある場合があります。

最後に、同様の方法でゴースト エンティティを削除します。[設定]>[デバイスとサービス]に移動し、[エンティティ]タブをクリックします。選択モード アイコンをクリックし、削除するエンティティを選択します。三点アイコンをクリックし、「選択した項目を削除」を選択します。あなたの幽霊実体は、封じ込めトラップに吸い込まれた胴体全体の蒸気の亡霊のように消えるはずです。

簡単な方法で幽霊を退治する

これらすべてが大変な仕事のように思えるとしても、そう感じているのはあなただけではありません。 Home Assistant の貢献者の 1 人である Frenck (Franck Nijhof) も同様でした。彼は、特にゴースト デバイスやエンティティを識別し、それらについて積極的に警告できる Spook カスタム統合を作成しました。 Spook によって検出された孤立したエンティティに関する情報を確認するには、[設定]>[システム]>[修復]に移動します。

ホーム アシスタントの Spook カスタム コンポーネントによって識別された不明なエンティティは設定を修復します。

すべての孤立したエンティティを自動的に削除するために使用できる Spook アクションもあります。これにより、親統合によって要求されなくなったすべてのエンティティが即座に削除されます。 Spook は HACS 経由でインストールできますが、これは正式な Home Assistant 統合ではなく、ご自身の責任で使用してください。


ホーム アシスタントを長く使用すると、ゴースト デバイスやエンティティがシステムに取り憑く可能性が高くなります。結局のところ、掃除をすることで気分が良くなるからです。

関連記事

前の投稿
NAS を購入した後に Netflix と Audible をキャンセルしましたが、もう戻れません
次の投稿
モバイル デバイス用に 20 ドルのダウンロード ステーションをセットアップしましたが、もう後戻りはできません