アプリケーションをシステムサービスとして実行しようとしています。サービスファイルの例は次のとおりです。
[Unit]
Description = Custom APP
Wants = network.target
After = syslog.target network-online.target graphical.target
StartLimitIntervalSec = 0
[Service]
User =
Type = simple
Environment =
WorkingDirectory =
ExecStart =
Restart = always
RestartSec = 60
KillMode = control-group
[Install]
WantedBy = graphical.target
SSH経由でサービスを実行します。オペレーティングシステムはUbuntu 18.04です。外部モニタがデバイスに接続されており、すべての場合にGUIを介してシステムに一度ログインしてからデバイスでsshを実行すると、サービスとプロセスは期待どおりに機能します。
ただし、デバイスを再起動して外部モニタを削除してSSHを介してのみログインすると(たとえば、GUIベースのログインなし)、これが発生します。
- コマンドラインから簡単なプロセスでアプリケーションを実行すると、期待どおりに機能します。
- アプリケーションをシステムサービスとして実行しようとすると、例外が発生した後に終了します。
- GUIを介して一度だけログインし、デバイスを再起動しないと、外部モニタを削除してもサービスは正常に動作します。
なぜこれが起こるのかわかりません。
編集する
- スローされた例外は - 有効な例外なしでTerminateが呼び出されることです。
- C++ gstreamer に基づくストリーミングアプリケーションです。