一江春水向東流

          做一個有思想的人,期待與每一位熱愛思考的人交流,您的關注是對我最大的支持。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            44 隨筆 :: 139 文章 :: 81 評論 :: 0 Trackbacks

          設置cron任務

          本文來自redhat官方文檔

          Cron是根據月、天、周、時間的組合設定,周期性的執行特定任務的守護程序。 Cron需要系統處于運行狀態。如果系統未運行,則計劃任務無法被執行。要使用cron服務, 需安裝vixie-cron RPM包,也要確保crond處于運行狀態。用rpm -q vixie-cron來 測定此軟件包是否安裝.用/sbin/service crond status來 測定crond是 否處于運行狀態。 cron的主要配置文件在以下的/etc/crontab文件中:包 含如下行

           SHELL=/bin/bash 
           PATH=/sbin:/bin:/usr/sbin:/usr/bin 
           MAILTO=root 
           HOME=/ 
           # run-parts 
           01 * * * * root run-parts /etc/cron.hourly 
           02 4 * * * root run-parts /etc/cron.daily 
           22 4 * * 0 root run-parts /etc/cron.weekly 
           42 4 1 * * root run-parts /etc/cron.monthly 
          

          前 四行是有關設置cron任 務運行的環境變量. SHELL變 量的值指定系統使用的SHELL環 境(該 樣例為bash shell),PATH變 量定義了執行命令的路徑。Cron的 輸出以電子郵件的形式發給MSILTO變 量定義的用戶名. 如 果MAILTO變 量定義為空字符串(MAILTO=""), 電子郵件不 會被發送. 執 行命令或腳本時HOME變 量可用來設置家目錄。

          文 件/etc/crontab中 每行任務的描述格式如下:

          minute hour day_of_month?month day_of_week command

          • minute - 從0 到 59的 整數
          • hour - 從0到23的 整數
          • day - 從1到31的 整數 (必須是指定月份的有效日期)
          • month - 從1到12的 整數 (或如Jan或Feb簡寫的月份)
          • dayofweek - 從0到7的整數,0或7用來描述周日 (或 用Sun或Mon簡 寫來表示)
          • command - 需要執行的命令(可 用as ls /proc >> /tmp/proc或 執行自定義腳本的命令)

          對 于以上各語句,星 號(*)表 示所有可用的值. 例 如,*在 指代month時 表示每月執行(需要符合其他限制條件)該命令。

          整 數間的連字號(-)表 示整數列,例 如1-4意 思是整數1,2,3,4.

          指 定數值由逗號分開。如:3,4,6,8表 示這四個指定整數.

          符 號“/”指 定步進設置.“/<interger>”表 示步進值。如0-59/2定 義每兩分鐘執行一次。步進值也可用星號表示。如*/3用 來運行每三個月份運行指定任務.

          以“#”開 頭的為注釋行,不 會被執行。

          如 文件/etc/crontab所 示,它 在RUN-PART腳 本中指定系統每小時,每天,每周。每月運行/cron.hourly, /etc/cron.daily, /etc/cron.weekly, 和/etc/cron.monthly中 的文件.這 些目錄中的文件為shell腳 本。

          如 果一個cron任 務需要定期而不是按小時,天,周,月 來執行,則 需要添加/etc/cron.d目 錄. 這 個目錄下的所有文件和文件/etc/crontab語 法相同. 查 看樣例

           # record the memory usage of the system every monday 
           # at 3:30AM in the file /tmp/meminfo 
           30 3 * * mon cat /proc/meminfo >> /tmp/meminfo 
           # run custom script the first day of every month at 4:10AM 
           10 4 1 * * /root/scripts/backup.sh 
          
          

          除 了root用 戶之外的用戶可以執行crontab配 置計劃任務。所有用戶定義的crontab存 儲在目錄/var/spool/cron下, 任 務會以創建者的身份被執行。要以特定用戶創建一個crontab, 先 以該用戶登錄,執 行命令crontab -e, 系統會啟動在VISUAL或 者EDITOR中 指定的的編輯軟件編輯crontab. 文 件內容與/etc/crontab格 式相同. 當 更改的crontab需 要保存時,文 件會保存在成如下文件/var/spool/cron/username.文 件名會根據用戶名而不同。

          cron 服 務會每分鐘檢查一次/etc/crontab, /etc/cron.d/, 和/var/spool/cron文 件下的變更.如 果發現變化,就 會下載到存儲器中.因 此,即 時crontab文 件改變了,程 序也不需要重新啟動。

          posted on 2008-03-28 12:20 allic 閱讀(868) 評論(0)  編輯  收藏 所屬分類: LINUX配置,shell
          主站蜘蛛池模板: 黎川县| 临城县| 双流县| 泾源县| 南宁市| 庄浪县| 安平县| 鄱阳县| 即墨市| 清远市| 宁城县| 河间市| 永寿县| 平昌县| 新津县| 方城县| 金坛市| 永清县| 嘉禾县| 吉安县| 韩城市| 辉县市| 黔西| 德庆县| 凤台县| 金川县| 开鲁县| 宁陵县| 普格县| 华池县| 桃园市| 新余市| 普安县| 拉孜县| 油尖旺区| 清徐县| 崇明县| 宁晋县| 滦南县| 楚雄市| 东兰县|