搜尋此網誌

RHCE - 定時排程


contab 與 at

contab : 定時執行

at : 指定時間運行一次


Crontab

當使用者使用 crontab 這個指令來建立工作排程之後,該項工作就會被紀錄到 /var/spool/cron/ 裡面去了,而且是以帳號來作為判別的喔!舉例來說, student使用 crontab 後, 他的工作會被紀錄到 /var/spool/cron/student 裡頭去!

[root@www ~]# crontab [-u username] [-l|-e|-r]
選項與參數:
-u :只有 root 才能進行這個任務,亦即幫其他使用者建立/移除 crontab 工作排程;
-e :編輯 crontab 的工作內容
-l :查閱 crontab 的工作內容
-r :移除所有的 crontab 的工作內容,若僅要移除一項,請用 -e 去編輯。

範例一:用 student 的身份在每天的 11:00 發信給自己
[student@www ~]$ crontab -e
# 此時會進入 vi 的編輯畫面讓您編輯工作!注意到,每項工作都是一行。
 0 12 * * * mail dmtsai -s "at 12:00" < /home/dmtsai/.bashrc
 #分 時 日 月 週 |<==============指令串========================>|


系統的設定檔: /etc/crontab

上頭的crontab -e 是針對使用者個cron來設計的,如果是系統的例行性任務,只要編輯/etc/contab這個檔案就可以了

* crontab -e 這個 crontab 其實是 /usr/bin/crontab 這個執行檔,但是 /etc/crontab 可是一個『純文字檔』喔

語法格式 :  * * * * * 某帳號 rum-parts 目錄 


  • 指令型態
    01 * * * * dmtsai mail -s "testing" kiki < /home/dmtsai/test.txt
    以 dmtsai 這個使用者的身份,在每小時執行一次 mail 指令。
  • 目錄規劃
    */5 * * * * root run-parts /root/runcron
    建立一個 /root/runcron 的目錄,將要每隔五分鐘執行的『可執行檔』都寫到該目錄下, 就可以讓系統每五分鐘執行一次該目錄下的所有可執行檔。
另外還有兩個檔案是/etc/cron.allow & /etc/cron.deny

  • /etc/cron.allow
    將可以使用 crontab 的帳號寫入其中,若不在這個檔案內的使用者則不可使用 crontab;
  • /etc/cron.deny
    將不可以使用 crontab 的帳號寫入其中,若未記錄到這個檔案當中的使用者,就可以使用 crontab 。

at

at是一個互動式的模式

at now + 5 minutes
>reboot
>ctrl D


這邊也有兩個檔案是/etc/at.allow & /etc/at.deny


 

Copyright © Jackie.Chen | Powered by Blogger | Template by 54BLOGGER | Fixed by Free Blogger Templates