モニターのホットプラグを処理するために、接続されたモニターを検出し、適切なタスクを実行するスクリプトを実行するユニットを作成しました。コードは次のとおりです。ここ
私はmonitor_hotplug.sh
他のプロセスを再ロードするためにいくつかのシグナルやオプションを使います。
# Or restart panel
xfce4-panel -r
#reload conky
killall -s SIGUSR1 conky
ただし、場合によっては、次のようにプロセスを再ロードする必要があります。
# restart plank
killall -s SIGHUP plank
plank
いくつかの欠点があります。
- ユニットは、板が終了するまでアクティブになります。
- Plankの起動はスクリプトの最後のコマンドでなければなりません。
- このような複数のプロセスを開始できません
この問題を解決するために、単位タイプをに変更し、forking
バックグラウンドプロセスで板を開始しました。
# restart plank
killall -s SIGHUP plank
plank&
これは正しいアプローチですか?スクリプト内の他の類似プロセスをどのように再起動できますか?