私はしばらく自分のマシンでCoral AI Accelerator(コーラルAIアクセラレータ)を動かそうとしていましたが、ようやく時間が取れたので修正に挑戦しました。結果は成功です!以下にその手順をまとめました。
私の環境:
NAS: TS-873(または同等のx86/AMDモデル)
QTSバージョン: 5.2.9.3410
アプリバージョン: Multimedia Console 2.10.0, Container Station 3.1.2.1742
ハードウェア: Google Coral Edge TPU(USB)
症状:
Google Coral Edge TPUを接続し、Multimedia Consoleを開いてAI Enginesに移動し、「QNAP AI Core」を有効にしようとします。一瞬「Starting」と表示されますが、すぐに「Disabled」に戻ります。Web UIにはエラーメッセージは表示されず、黙って失敗します。
SSHや隠しログを調べた結果、原因はハードウェア自体ではなく、QNAPのアーキテクチャ内にある隠れたDockerデーモンの破損でした。
根本原因: 隠れたDockerデーモン
QNAPは実際には2つのDockerデーモンを動かしています。Container Station(docker)で見えるものと、QNAP独自アプリ専用の完全に隠れたもの(system-docker)です。
NASで強制再起動やアプリの移行、電源スパイクが発生した場合、system-dockerデーモンの仮想ハードディスクが破損している可能性があります。AI CoreのスクリプトはQuMagie AIコンテナを起動しようとしますが、破損した隠しドライブに当たり、バックグラウンドで即座にクラッシュします。
ここでは破損した隠しデータベースを消去し、AI Coreをゼロから再構築する方法を説明します。
重要警告: 顔データのバックアップを必ず行ってください ![]()
この手順を省略すると、AI解析を最初からやり直すことになります。隠しDockerストレージを消去すると、AI Coreの顔認識ベクトルキャッシュが削除されます。QuMagieデータベースを事前にバックアップしないと、これまでに名付けた顔やカスタムタグがすべて失われ、NASは写真ライブラリ全体を最初から再インデックスする必要があります。
(免責事項: 私自身はこのバックアップ手順を実行せずに作業してしまい、顔タグを失いました。復元の挙動は環境によって異なる場合がありますが、以下がQNAPがデータベースを保存している標準パスです。)
1. QuMagieデータベースをPublicフォルダにバックアップする:
NASにSSHで接続し、以下のコマンドで顔データとサムネイルをバックアップフォルダに安全にコピーします。
mkdir -p /share/Public/qumagie_backup
cp -avr /share/CACHEDEV1_DATA/.system/data/s01 /share/Public/qumagie_backup/s01_db
cp -avr /share/CACHEDEV1_DATA/.system/facedata /share/Public/qumagie_backup/facedata
(復元が必要な場合は、AI Coreが稼働した後に.systemフォルダへコピーし直しますが、やはり環境によって挙動が異なる場合があります。)
ステップバイステップ ターミナル修正手順
以下のパスはContainer Station用にCACHEDEV1_DATAを使用しています。アプリが他のボリュームにインストールされている場合は番号を変更してください。
2. 隠れたデーモンを停止し、ゴーストロックファイルを削除:
rm -f /var/run/system-docker.sock
rm -f /var/run/system-docker.pid
killall -9 system-docker 2>/dev/null
3. 破損した隠しDockerストレージを消去:
注意: このコマンドは数千の小さなレイヤーファイルを削除するため、数分間ハングする場合があります。完了するまで待ってください。
rm -rf /share/CACHEDEV1_DATA/.qpkg/container-station/system-docker/*
4. Container Stationを再起動してコア構造を再構築:
/share/CACHEDEV1_DATA/.qpkg/container-station/container-station.sh restart
5. 欠落したシンボリックリンクフォルダを再作成:
ストレージを消去したため、デーモンがoverlay2ストレージドライバに必要な特定ディレクトリを再構築しない場合があります。インストーラーがパニックにならないよう手動で作成します。
mkdir -p /share/CACHEDEV1_DATA/.qpkg/container-station/system-docker/tmp
chmod 777 /share/CACHEDEV1_DATA/.qpkg/container-station/system-docker/tmp
mkdir -p /share/CACHEDEV1_DATA/.qpkg/container-station/system-docker/overlay2/l
6. 中途半端に展開されたイメージキャッシュをクリア:
docker -H unix:///var/run/system-docker.sock system prune -a -f
7. AI Coreを再インストール:
これで隠れたDockerデーモンが完全に正常な状態でクリーンになりました。
QNAPのWeb UIでApp Centerを開きます。
QNAP AI Coreを探してアンインストールし、すぐに再インストールします。
これにより、インストーラーが重いAI/Ubuntuイメージをクリーンなsystem-dockerデーモンに正しく展開できます。
再インストールが完了したら、Multimedia Console > AI Enginesに戻り、QNAP AI CoreスイッチをONにします。すぐに「Started」に切り替わるはずです。
追加トラブルシューティング: USB電源の電圧降下(ブラウンアウト)
上記のソフトウェア修正を完了してもスイッチが無効に戻ったり、Coral Edge TPUがMultimedia Consoleに全く表示されない場合、ハードウェアの電力制限が原因かもしれません。
Google Coral Edge TPUは初期化の瞬間に大きな電力スパイクが発生します。多くの古いQNAP NASの内蔵USBポートは十分な電力を素早く供給できず、Coralが即座に電圧降下(ブラウンアウト)して切断され、AIソフトウェアがクラッシュします。
ハードウェア対策: Coralを電源付きUSB 3.0ハブ(コンセントから電源を取るタイプ)に接続し、そのハブをNASに接続してください。これによりハブが初期化時のスパイクを吸収し、Coralに安定した接続を供給できます。
お役に立てば幸いです。私のAI認識は約100万枚の写真で10日ほどかかりますが、それでも他の方法よりはるかに速いです!