すべてのシステムタイマーデバイスを一時的に停止します。

すべてのシステムタイマーデバイスを一時的に停止します。

ベンチマーク用にLinuxシステムを準備するためのスクリプトを作成しています。これに加えて、すべてのシステムタイマーデバイスを停止してから、この操作を再開したいと思います。

要するに、私は次のようなものが必要です service crond stop/start

これまで私が見つけたのは、systemctl list-timersそれぞれを手動で停止してから手動で開始することだけです。より良い、より一般的なソリューションを知っていますか?

ベストアンサー1

現在実行中のすべてのタイマーを停止するには、次のようにします。

systemctl stop '*.timer'

後でタイマーを再起動するには、その時点でどのタイマーが実行されていたかを覚えておく必要があります。

timers=$(systemctl list-units --type=timer --state=active --no-legend | awk '{print $1}')
systemctl stop $timers
# ...
systemctl start $timers

(明らかにユニットのモードが非アクティブユニットと一致しないため、systemctl start '*.timer'動作しません。)

おすすめ記事