k-nishiki
2024年11月22日 15時45分
==========
製品型番:A6E Cat.1 WLAN/BT付き(BTOモデル)
Debian/ABOSバージョン:3.20.3-at.4
カーネルバージョン:5.10.226
3G/LTE モジュール情報 (Debianのみ):
その他:
==========
APP LED 状態と製品状態の対応についての問い合わせです。
マニュアルには、
OFF アプリ起動不可
ON アプリ起動可能
Blink Slow アプリ起動完了
Blink Fast アプリエラー
アプリ起動完了とアプリエラーの点滅はアプリ自身が行う
という記載があります。
アプリ起動不可とアプリ起動可能については、デフォルトではどのような条件でOFF、ONとなりますでしょうか?
コンテナの起動結果と関係づけて、OFF、ONを自動制御することは可能でしょうか?
at_shinya.koga
2024年11月22日 18時41分
アットマークテクノの古賀です。
k-nishikiさん;
>APP LED 状態と製品状態の対応についての問い合わせです。
>マニュアルには、
> OFF アプリ起動不可
> ON アプリ起動可能
> Blink Slow アプリ起動完了
> Blink Fast アプリエラー
> アプリ起動完了とアプリエラーの点滅はアプリ自身が行う
>という記載があります。
>アプリ起動不可とアプリ起動可能については、デフォルトではどのような条件でOFF、ONとなりますでしょうか?
次のようになっています:
・ON: ABOS のサービスマネージャがサービス群の起動を終えた時。
自動起動するよう設定されたコンテナの起動処理も、この時点で済んでいます。
自動起動するよう設定されたコンテナが起動できなくても、この状態となります。
・OFF: ABOS が正常起動しないなどして、ON の条件を満たせない時(電源 ON 直後の状態のまま)
実は、APP LED を ON する動作は、/etc/local.d/ に配置したスクリプトで行っています。
このディレクトリに配置されたスクリプトのうち、ファイル名の末尾が .start のスクリプトを、ABOS のサービスマネージャ(OpeRC)がファイル名の昇順で実行するようになっているのです。
>コンテナの起動結果と関係づけて、OFF、ONを自動制御することは可能でしょうか?
そうですね。APP LED の点灯制御を実装すれば可能です。
たとえば、次のようにすることで、特定のコンテナが起動処理直後に終了することなく起動したかを APP LED の点灯状態で示せます:
・コンテナの設定ファイル(.conf ファイル)で、/etc/local.d/zzz_ready.start を削除する
(overlayfs 上のファイルですから、削除しても、削除結果を永続化しない限り、次回起動時に出現します。)
・自動起動結果をチェックしたいコンテナが動作中かどうかをチェックして、動作中なら APP LED を点灯するスクリプトを、名前の末尾が .start のファイルとして作る。
そのスクリプトを /etc/local.d/ に配置して、persist_file で永続化する。
以下は、スクリプト例です:
以上、参考になりましたら幸いです。