Cron
是否有任何既定模式可以為使用者 cron 作業安裝終止或開/關開關?
我們有較長的建構,通常我們會安排我們的 cron 作業,但有時我們必須在非標準時間範圍內重新執行建構,並且可能會與這些時間通常可以安全執行的 cron 作業發生衝突。
我們有多個帳戶同時執行建構和 cron 作業,因此我們不能暫停整個機器的 crontab 服務,然後再重新啟動它。
我想知道是否有人有模式或實現。我想這就像
使用者創建一個文件: ~/block-crontab
使用者執行建構 cron 作業在使用者的主目錄中查找該文件,如果存在則跳過所有 cron 作業。否則它執行作業然後當建構完成時,使用者刪除 ~/block-crontab
那行得通嗎?我猜我需要以某種方式修改 cron 腳本。我主要想知道是否有更好/標準的方法來解決這個問題?
謝謝。
crond
我強烈建議不要在建構腳本中實現一些(甚至是簡單的)形式的鎖定,而不是搞亂。例如,觸摸並檢查/var/run/
: 中的文件,如果您的腳本找到了某些東西,那麼另一個程序正在建構項目。您顯然需要在完成後刪除鎖定文件。正如@GnP 在評論中指出的那樣,您還可以使用該
flock
實用程序半自動管理您的鎖定文件。如果您不/不能依賴任何鎖定機制,只需發出 a
service crond stop
即可關閉crond
系統。