パスを監視するためにsystemdサービスを追加しましたが、機能しません。 /tmp/test/ 下の .txt ファイルをタッチしましたが、サービスが開始されませんでした。 「/tmp/testlog.txt」が生成されるのを見ることができません。私のサービスに問題がありますか?
myservice.path
[Unit]
Description=Path Exists
[Path]
PathExistsGlob=/tmp/test/*.txt
PathChanged=/tmp/test/
[Install]
WantedBy=multi-user.target
myservice.service
[Unit]
Description=Test
[Service]
ExecStartPre=/bin/sh -c 'mkdir /tmp/test && sleep 60'
ExecStart=/bin/sh -c 'echo "Test Success" >> /tmp/testlog.txt & '
[Install]
WantedBy=multi-user.target
一時ディレクトリ:
# ls /tmp/test/
ab.txt
#
失敗の理由は何ですか?
答え1
時間の問題です。依存関係を追加し、サービスが最後のサービスとして開始されるようにしました。その人が問題を解決しました。
答え2
この問題が発生し、セクションに以下を追加してみました[Unit]
。
Wants=observer.service