使用 yum-cron 進行調度
我正在嘗試使用我組織中所有 GNU/Linux 機器的 Spacewalk 配置更新檔管理,但我在調度方面有點掙扎。變更管理已決定,開發/測試環境應在每週二早上 5 點至 7 點進行修補,生產環境應在周四早上在同一時間範圍內進行修補。除了檢查、下載和應用更新檔之外,我還添加了一個腳本以在核心更新時重新啟動伺服器,以及一個用於清理 yum 的腳本。我已經將這些腳本放在 /etc/cron.weekly/ 中並配置了 anacrontab:
1 5 cron.daily nice run-parts /etc/cron.daily 7 5 cron.weekly nice run-parts /etc/cron.weekly
我的問題是每天都在執行,我認為問題是由 yum-cron /etc/yum-cron.conf 的配置文件引起的。我試圖找到有關如何配置此文件的資訊,而設置 DAYS_OF_WEEK / days_of_week 顯然是魔術發生的地方。手冊頁也沒有任何幫助。我的問題是,我如何將星期幾設置為星期二 (2) 或星期四 (4)?我嘗試了不同的變體,例如:
DAYS_OF_WEEK=2 DAYS_OF_WEKK="2" days_of_week = 2 days_of_week = "2"
然而似乎沒有什麼能按我想要的方式工作。我有預感,對於 CentOS 7,我必須使用小寫的 days_of_week,而對於 CentOS 6,我必須使用大寫,但我不確定。
任何意見或想法將不勝感激,並提前致謝!
顯然 EL 7 中的 yum-cron 3.4 刪除了 /etc/sysconfig/yum-cron 包括 DAYS_OF_WEEK 功能。我在 /usr/sbin/yum-cron 中沒有看到類似的東西。
/etc/yum/yum-cron.conf
根據您的喜好自定義配置文件 ( )。至少,預設值random_sleep
比您的 2 小時視窗長。編寫和安排您自己的腳本。
#!/bin/sh # /usr/local/bin/updateandreboot # Wrapper for update and reboot # TODO does not respect /var/lock/subsys/yum-cron /usr/sbin/yum-cron /etc/yum/yum-cron.conf && \ /usr/bin/needs-restarting -r || \ /usr/sbin/shutdown -r now "Restarting for scheduled software update"
由於我不知道 anacron 中的一周中的某一天,因此將其安排在 cron 中。
# /etc/cron.d/autoupdate # 05:01 on Tuesday 1 5 * * 2 root /usr/local/bin/updateandreboot
還可以
yum clean packages
在需要時安排。刪除 yum-cron 的預設每日和每週計劃。
rm /etc/cron*/*yum*cron
會這樣做,但是當 yum-cron 包更新時這些會回來。