9.9. 自動化同步作業

用 RHN 來手動同步 RHN 衛星伺服器的內容,是非常艱鉅的任務。RHN 的尖峰時間為美國的上班時間,因此在這段時間進行同步可能會較慢。因此,Red Hat 建議您在其他時段排程同步的工作,負載平衡較好,同步速度較快。美國的上班時間因為橫跨了四個時區,因此大約為週一到週五的 8:00 AM 到 9:00 PM EST (UTC -5)(臺灣、香港、中國大陸的時間為 9:00 PM 到 10:00 AM)。因為季節的關係,這時段可能還會有一小時的差別。「除此之外,Red Hat 強烈建議您以亂數方式執行同步,以獲取最佳效能。
這自動化可以用簡單的 cron job 來完成。要達到這目的,請以 root 身份編輯 crontab:
crontab -e
這會在文書編輯器中開啟 crontab,預設是 vi。您可以修改 EDITOR 變數,以使用另一種編輯器,例如 export EDITOR=gedit
開啟之後,請使用前五個欄位(分鐘、小時、天、月、以及星期幾)來排程同步作業。請記得,小時用的是廿四小時時制。請編輯 crontab 以包括亂數同步,例如:
0 1 * * * perl -le 'sleep rand 9000' && satellite-sync --email >/dev/null \
2>/dev/null
這項工作會在每晚系統時間的凌晨一點到三點半之間執行,並將 cronstdoutstderr 重新導向,以避免複製來自於 satellite-sync 的易讀訊息。您亦可使用其它選項,例如 --email。欲取得完整的選項清單,請參閱 表格 6.1, “satellite-sync 選項”。當您退出文書編輯器之後,經過修改的 crontab 便會即刻被安裝。