しばらく前に、次のコマンドを使用してシステムタイマーを作成しました。
systemd-run --on-calendar='*-*-01 12:00:00' --description='Update root hints for unbound' --property='After=network.target' --timer-property='Persistent=true' /usr/bin/curl -o /etc/unbound/root.hints https://www.internic.net/domain/named.cache
このタイマーが作成された後は、ランダムな名前が割り当てられますrun-u1021
。
今日はタイマーの状態を確認したいので、次のコマンドを実行しました。
systemctl list-timers --all
そこには出ていません。
確認してみると、/var/lib/systemd/timers/
その名前のタグファイルが含まれていることがわかりましたstamp-run-u1021.timer
。
ファイルを実行すると、stat
そのファイルが最後に変更されたことがわかります。2020-05-09
これはファイルの統計にも当てはまります/etc/unbound/root.hints
。
➜ stat /var/lib/systemd/timers/stamp-run-u1021.timer
File: /var/lib/systemd/timers/stamp-run-u1021.timer
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 803h/2051d Inode: 9438418 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2020-05-09 23:40:46.628653123 -0600
Modify: 2020-05-09 23:40:46.628653123 -0600
Change: 2020-05-09 23:40:46.628653123 -0600
Birth: 2020-05-09 23:40:46.628653123 -0600
したがって、このタイマーは少なくとも一度は実行されました。しかし、私の質問はタイマーがどこにありますか?なぜsystemdに表示されないのですか?これがどのように作成されたかと関係がありますか?
次のタイマーの実行:
➜ systemd-analyze calendar '*-*-01 12:00:00'
Normalized form: *-*-01 12:00:00
Next elapse: Mon 2020-06-01 12:00:00 CST
(in UTC): Mon 2020-06-01 18:00:00 UTC
From now: 1 day 22h left
これで、2日以内にディスプレイタイマーがアクティブになります。実際にアクティブになるのを待ってみましょう。その間、一時的なタイマーとそのサービスが生成された場所に誰かが答えてくれれば役に立ちます。
私もこの質問を見ました。"systemd-run --on-calendar"を使用して生成されたタイマーを削除する しかし、systemdは実際にタイマーを表示しますが、タイマーを削除するのに問題があるという点で問題は異なります。私の場合、タイマーはsystemdに表示されていませんが、まだそこにあるようです。