09:15~17:15の間に毎分開始するにはサービスが必要です。
これを達成するための最良の方法は何ですか?
3つのタイマーを作成できます。1つは起動用(1)、1つは1分ごとにサービス実行(2)、1つは停止用(3)です。しかし、中間の再起動には強力ではありません。
答え1
複数の設定を使用して単一のタイマーデバイスを作成できます。OnCalendar=
これにより、必要な正確な間隔を指定できます。
systemd.timerのマニュアルページを見ると、OnCalendar=
部分的には次のように言います。
複数回指定できます。
したがって、開始、中間、終了には3つの個別の設定を使用します。
[Timer]
OnCalendar=*-*-* 09:15..59:00
OnCalendar=*-*-* 10..16:*:00
OnCalendar=*-*-* 17:00..15:00
これにより、9時15分から17時15分の間に毎分タイマーがトリガーされます。
答え2
必要な時間の間に正確に実行するには、cronに3つのレコードが必要です。
15-59 9 * * * /path/to/task
* 10-16 * * * /path/to/task
0-15 17 * * * /path/to/task
答え3
Systemdタイマーでなければなりませんか?以下を生成することもできます。予約されたことこの仕事のために。たとえば、
*/1 9-17 * * * /bin/systemctl restart SERVICE
これは正確に9:15~17:15の間ではなく、9:00~17:59の間で行われます。しかし、私は高度なcronjobを作成するのにうまくいきません。