Cron

是否有任何既定模式可以為使用者 cron 作業安裝終止或開/關開關?

  • December 4, 2017

我們有較長的建構,通常我們會安排我們的 cron 作業,但有時我們必須在非標準時間範圍內重新執行建構,並且可能會與這些時間通常可以安全執行的 cron 作業發生衝突。

我們有多個帳戶同時執行建構和 cron 作業,因此我們不能暫停整個機器的 crontab 服務,然後再重新啟動它。

我想知道是否有人有模式或實現。我想這就像

使用者創建一個文件: ~/block-crontab

使用者執行建構 cron 作業在使用者的主目錄中查找該文件,如果存在則跳過所有 cron 作業。否則它執行作業然後當建構完成時,使用者刪除 ~/block-crontab

那行得通嗎?我猜我需要以某種方式修改 cron 腳本。我主要想知道是否有更好/標準的方法來解決這個問題?

謝謝。

crond我強烈建議不要在建構腳本中實現一些(甚至是簡單的)形式的鎖定,而不是搞亂。例如,觸摸並檢查/var/run/: 中的文件,如果您的腳本找到了某些東西,那麼另一個程序正在建構項目。您顯然需要在完成後刪除鎖定文件。

正如@GnP 在評論中指出的那樣,您還可以使用該flock實用程序半自動管理您的鎖定文件。

如果您不/不能依賴任何鎖定機制,只需發出 aservice crond stop即可關閉crond系統。

引用自:https://serverfault.com/questions/884736