"systemd-run --on-calendar"を使用して生成されたタイマーを削除する

systemd-run --on-calendar ....「これで正しいファイルに置き換えました」を使用して.timerシステムジョブを作成しましたが、.service以前のジョブを削除することはできません。停止して無効にすることはできますが、呼び出すと、systemctl list-timersまだランダムな名前で表示されますrun-r0d0dc22...。また、その文書が見つかりまし.timerたが見つかりませんでした。

ベストアンサー1

一時ファイルは最終的に表示され、/run/user/ユーザーがログオフ(使用)するか再起動(再作成)するまで削除されないようですsystemd-run --user/run

たとえば、特定の時間に一度だけ実行されるコマンドを生成する場合:

systemd-run --user --on-calendar '2017-08-12 14:46' /bin/bash -c 'echo done >/tmp/done'

次の場所からファイルを入手できます/run

/run/user/1000/systemd/user/run-28810.service
/run/user/1000/systemd/user/run-28810.service.d/50-Description.conf
/run/user/1000/systemd/user/run-28810.service.d/50-ExecStart.conf
/run/user/1000/systemd/user/run-28810.timer
/run/user/1000/systemd/user/run-28810.timer.d/50-Description.conf
/run/user/1000/systemd/user/run-28810.timer.d/50-OnCalendar.conf

--user以外のファイルの場合/run/systemd/system/

ファイルを削除しsystemctl [--user] daemon-reloadて次の操作を行うと、list-timersデバイス名のみが実行された場合は最後の履歴とともに表示されます。この情報はsystemdの内部状態またはログファイルに保存できます。

おすすめ記事