crontab定時運行命令_第1頁
crontab定時運行命令_第2頁
crontab定時運行命令_第3頁
crontab定時運行命令_第4頁
crontab定時運行命令_第5頁
已閱讀5頁,還剩13頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、linux 定時運行程序 轉crontab,無論root還是user都可以用?;居梅? 1. crontab -l     列出當前的crontab任務 2. crontab -d     刪除當前的crontab任務 3. crontab -e (solaris5.8上面是 crontab -r)     編輯一個crontab任務,ctrl_D結束 4. crontab filename   

2、0; 以filename做為crontab的任務列表文件并載入crontab file的格式:    crontab 文件中的行由 6 個字段組成,不同字段間用空格或 tab 鍵分隔。前 5 個字段指定命令要運行的時間       分鐘 (0-59)       小時 (0-23)       日期 (1-31)       月

3、份 (1-12)       星期幾(0-6,其中 0 代表星期日)       第 6 個字段是一個要在適當時間執行的字符串例子:      #MIN HOUR DAY MONTH DAYOFWEEK COMMAND       #每天早上6點10分       10 6 * * * date   

4、0;   #每兩個小時       0 */2 * * * date    (solaris 5.8似乎不支持此種寫法)      #晚上11點到早上8點之間每兩個小時,早上8點       0 23-7/2,8 * * * date       #每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點     

5、  0 11 4 * mon-wed date       #1月份日早上4點       0 4 1 jan * date例7 # crontab -l #列出用戶目前的crontab。 10 6 * * * date 0 */2 * * * date 0 23-7/2,8 * * * date #在crontab文件中如何輸入需要執行的命令和時間。該文件中每行都包括六個域,其中前五個域是指定命令被執行的時間,最后一個域是要被執行的命令。每個域之間使用空格或者制表符分隔。格式如下:m

6、inute hour day-of-month month-of-year day-of-week commands第一項是分鐘,第二項是小時,第三項是一個月的第幾天,第四項是一年的第幾個月,第五項是一周的星期幾,第六項是要執行的命令。這些項都不能為空,必須填入。如果用戶不需要指定其中的幾項,那么可以使用*代替。因為*是統配符,可以代替任何字符,所以就可以認為是任何時間,也就是該項被忽略了。在表4-1中給出了每項的合法范圍。 表4-1指定時間的合法范圍時間 合法值 minute 00-59 hour 00-23,其中00點就是晚上12點 day-of-month 01-31 month-of-

7、year 01-12 day-of-week 0-6,其中周日是0 這樣用戶就可以往crontab 文件中寫入無限多的行以完成無限多的命令。命令域中可以寫入所有可以在命令行寫入的命令和符號,其他所有時間域都支持列舉,也就是域中可以寫入很多的時間值,只要滿足這些時間值中的任何一個都執行命令,每兩個時間值中間使用逗號分隔。除了數字還有幾個個特殊的符號就是"*"、"/"和"-"、",",*代表所有的取值范圍內的數字,"/"代表每的意思,"*/5"表示每5個單位,"-&qu

8、ot;代表從某個數字到某個數字,","分開幾個離散的數字。幾個例子:每天早上6點 0 6 * * * echo "Good morning." >> /tmp/test.txt /注意單純echo,從屏幕上看不到任何輸出,因為cron把任何輸出都email到root的信箱了。 每兩個小時 0 */2 * * * echo "Have a break now." >> /tmp/test.txt 晚上11點到早上8點之間每兩個小時,早上八點 0 23-7/2,8 * * * echo "Have a g

9、ood dream:)" >> /tmp/test.txt 每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點 0 11 4 * 1-3 command line 1月1日早上4點 0 4 1 1 * command line SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=root /如果出現錯誤,或者有數據輸出,數據作為郵件發給這個帳號HOME=/ /使用者運行的路徑,這里是根目錄# run-parts01 * * * * root run-parts /etc/cron.hourly /每小時執行/et

10、c/cron.hourly內的腳本02 4 * * * root run-parts /etc/cron.daily /每天執行/etc/cron.daily內的腳本22 4 * * 0 root run-parts /etc/cron.weekly /每星期執行/etc/cron.weekly內的腳本42 4 1 * * root run-parts /etc/cron.monthly /每月去執行/etc/cron.monthly內的腳本大家注意"run-parts"這個參數了,如果去掉這個參數的話,后面就可以寫要運行的某個腳本名,而不是文件夾名了。 例85,15,25

11、,35,45,55 16,17,18 * * * command這就是表示任意天任意月,其實就是每天的下午4點、5點、6點的5 min、15 min、25 min、35 min、45 min、55 min時執行命令。例9 在每周一,三,五的下午3:00系統進入維護狀態,重新啟動系統。那么在crontab 文件中就應該寫入如下字段:00 15 * * 1,3,5 shutdown -r +5然后將該文件存盤為foxy.cron,再鍵入crontab foxy.cron安裝該文件。例10 每小時的10分,40分執行用戶目錄下的innd/bbslin這個指令:10,40 * * * * innd/b

12、bslink例11 每小時的1分執行用戶目錄下的bin/account這個指令:1 * * * * bin/account例12 每天早晨三點二十分執行用戶目錄下如下所示的兩個指令(每個指令以;分隔):20 3 * * * (/bin/rm -f expire.ls logins.bad;bin/expire$#62;expire.1st)例13 每年的一月和四月,4號到9號的3點12分和3點55分執行/bin/rm -f expire.1st這個指令,并把結果添加在mm.txt這個文件之后(mm.txt文件位于用戶自己的目錄位置)。12,55 3 4-9 1,4 * /bin/rm -f e

13、xpire.1st$#62;$#62;mm.txt例14 我們來看一個超級用戶的crontab文件:#Run the atrun program every minutes#This runs anything thats due to run from at.See man at or atrun.0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/lib/atrun40 7 * * * updatedb8,10,22,30,39,46,54,58 * * * * /bin/sync進程的掛起及恢復命令bg、fg作業控制允許將進程掛起并可以在需要時恢

14、復進程的運行,被掛起的作業恢復后將從中止處開始繼續運行。只要在鍵盤上按ctrl+z$#62;,即可掛起當前的前臺作業。例15$ cat text.filectrl+z$#62;1 + stopped cat text.file$ jobs1+ stopped cat text.file在鍵盤上按ctrl+z$#62;后,將掛起當前執行的命令cat。使用jobs命令可以顯示shell的作業清單,包括具體的作業、作業號以及作業當前所處的狀態?;謴瓦M程執行時,有兩種選擇:用fg命令將掛起的作業放回到前臺執行;用bg命令將掛起的作業放到后臺執行。例16 用戶正在使用Emacs,突然需要查看系統進程情況

15、。就首先使用Ctrl+z$#62;組合鍵將Emacs進程掛起,然后使用bg命令將其在后臺啟動,這樣就得到了前臺的操作控制權,接著鍵入“ps ?x”查看進程情況。查看完畢后,使用fg命令將Emacs帶回前臺運行即可。其命令格式為:Ctrl+z$#62;$ bg emacs$ ps ?x$ fg emacs默認情況下,fg和bg命令對最近停止的作業進行操作。如果希望恢復其他作業的運行,可以在命令中指定要恢復作業的作業號來恢復該作業。例如:$ fg 1cat text.file文件含義/etc/cron.deny該文件中所列的用戶不允許使用Crontab命令/etc/cron.allow該文件中所列

16、的用戶允許使用Crontab命令/var/spool/cron/是所有用戶的crontab文件/var/spool/cron/crontabs/var/spool/cron/crontabsCrontab命令的格式為:crontab l|-r|-e|-i username,其參數含義如表一:參數名稱含義示例-l顯示用戶的Crontab文件的內容crontabl l-i刪除用戶的Crontab文件前給提示crontabl -ri-r從Crontab目錄中刪除用戶的Crontab文件crontabl -r-e編輯用戶的Crontab文件crontabl -e用戶所建立的Crontab文件存于/va

17、r/spool/cron中,其文件名與用戶名一致。它的格式共分為六段,前五段為時間設定段,第六段為所要執行的命令段,格式如下:* * * * * <command>其時間段的含義如表二:段含義取值范圍第一段代表分鐘059第二段代表小時023第三段代表日期131第四段代表月份112第五段代表星期幾,0代表星期日06例:如果用戶的Crontab文件的內容是:29 19 * * * echo its dinner time,則系統每天的19:29顯示its dinner time示例(創建一個cron全過程,每分鐘都會在test.txt里輸入當前時間):1.  

18、60;  以普通用戶登錄linux系統(我用的是CentOS4.1)2.     $crontab e說明:系統默認的編輯器是VIM,如果不是請加上以下shell:      $EDITOR=vi      $export EDITOR3.     輸入”*/1 * * * * date >> $HOME/test.txt”,save and exit VIM4.  

19、0;  $su root5.     $cd /etc/init.d6.     ./crond restart下面看看看幾個具體的例子: 0 */2 * * * /sbin/service httpd restart  意思是每兩個小時重啟一次apache 50 7 * * * /sbin/service sshd start  意思是每天7:50開啟ssh服務 50 22 * * * /sbin/service sshd stop  意思是每天22:50關閉ssh服務 0

20、 0 1,15 * * fsck /home  每月1號和15號檢查/home 磁盤 1 * * * * /home/bruce/backup  每小時的第一分執行 /home/bruce/backup這個文件 00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm ;  每周一至周五3點鐘,在目錄/home中,查找文件名為*.xxx的文件,并刪除4天前的文件。 30 6 */10 * * ls  意思是每月的1、11、21、31日是的6:30執行一次ls命令Crontab是UNIX系統

21、下的定時任務觸發器,其使用者的權限記載在下列兩個文件中:文件含義/etc/cron.deny該文件中所列的用戶不允許使用Crontab命令/etc/cron.allow該文件中所列的用戶允許使用Crontab命令/var/spool/cron/是所有用戶的crontab文件/var/spool/cron/crontabs/var/spool/cron/crontabsCrontab命令的格式為:crontab l|-r|-e|-i username,其參數含義如表一:參數名稱含義示例-l顯示用戶的Crontab文件的內容crontabl l-i刪除用戶的Crontab文件前給提示crontab

22、l -ri-r從Crontab目錄中刪除用戶的Crontab文件crontabl -r-e編輯用戶的Crontab文件crontabl -e用戶所建立的Crontab文件存于/var/spool/cron中,其文件名與用戶名一致。它的格式共分為六段,前五段為時間設定段,第六段為所要執行的命令段,格式如下:* * * * * <command>其時間段的含義如表二:段含義取值范圍第一段代表分鐘059第二段代表小時023第三段代表日期131第四段代表月份112第五段代表星期幾,0代表星期日06例:如果用戶的Crontab文件的內容是:29 19 * * * echo its dinne

23、r time,則系統每天的19:29顯示its dinner time示例(創建一個cron全過程,每分鐘都會在test.txt里輸入當前時間):1.     以普通用戶登錄linux系統(我用的是CentOS4.1)2.     $crontab e說明:系統默認的編輯器是VIM,如果不是請加上以下shell:      $EDITOR=vi      $export EDITOR3.  

24、60;  輸入”*/1 * * * * date >> $HOME/test.txt”,save and exit VIM4.     $su root5.     $cd /etc/init.d6.     ./crond restart下面看看看幾個具體的例子: 0 */2 * * * /sbin/service httpd restart  意思是每兩個小時重啟一次apache 50 7 * * * /sbin/service sshd

25、start  意思是每天7:50開啟ssh服務 50 22 * * * /sbin/service sshd stop  意思是每天22:50關閉ssh服務 0 0 1,15 * * fsck /home  每月1號和15號檢查/home 磁盤 1 * * * * /home/bruce/backup  每小時的第一分執行 /home/bruce/backup這個文件 00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm ;  每周一至周五3點鐘,在目錄/home中,查找文件

26、名為*.xxx的文件,并刪除4天前的文件。 30 6 */10 * * ls  意思是每月的1、11、21、31日是的6:30執行一次ls命令Crontab是UNIX系統下的定時任務觸發器,其使用者的權限記載在下列兩個文件中:文件含義/etc/cron.deny該文件中所列的用戶不允許使用Crontab命令/etc/cron.allow該文件中所列的用戶允許使用Crontab命令/var/spool/cron/是所有用戶的crontab文件/var/spool/cron/crontabs/var/spool/cron/crontabsCrontab命令的格式為:crontab l|-

27、r|-e|-i username,其參數含義如表一:參數名稱含義示例-l顯示用戶的Crontab文件的內容crontabl l-i刪除用戶的Crontab文件前給提示crontabl -ri-r從Crontab目錄中刪除用戶的Crontab文件crontabl -r-e編輯用戶的Crontab文件crontabl -e用戶所建立的Crontab文件存于/var/spool/cron中,其文件名與用戶名一致。它的格式共分為六段,前五段為時間設定段,第六段為所要執行的命令段,格式如下:* * * * * <command>其時間段的含義如表二:段含義取值范圍第一段代表分鐘059第二段代

28、表小時023第三段代表日期131第四段代表月份112第五段代表星期幾,0代表星期日06例:如果用戶的Crontab文件的內容是:29 19 * * * echo its dinner time,則系統每天的19:29顯示its dinner time示例(創建一個cron全過程,每分鐘都會在test.txt里輸入當前時間):1.     以普通用戶登錄linux系統(我用的是CentOS4.1)2.     $crontab e說明:系統默認的編輯器是VIM,如果不是請加上以下shell:  &

29、#160;   $EDITOR=vi      $export EDITOR3.     輸入”*/1 * * * * date >> $HOME/test.txt”,save and exit VIM4.     $su root5.     $cd /etc/init.d6.     ./crond restart下面看看看幾個具體的例子: 0 */2

30、 * * * /sbin/service httpd restart  意思是每兩個小時重啟一次apache 50 7 * * * /sbin/service sshd start  意思是每天7:50開啟ssh服務 50 22 * * * /sbin/service sshd stop  意思是每天22:50關閉ssh服務 0 0 1,15 * * fsck /home  每月1號和15號檢查/home 磁盤 1 * * * * /home/bruce/backup  每小時的第一分執行 /home/bruce/backup這個文件 00 0

31、3 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm ;  每周一至周五3點鐘,在目錄/home中,查找文件名為*.xxx的文件,并刪除4天前的文件。 30 6 */10 * * ls  意思是每月的1、11、21、31日是的6:30執行一次ls命令linux下統計文件數目MySQL服務器安裝完之后如何調節性能LINUX crontab 定期任務Published by admin, at 10:27, 2007, under Linux系統Jun14作者:北南南北來自:LinuxSir.Org摘要:Linux操

32、作系統中,計劃任務通常由cron來承擔,了解或掌握cron,能為我們管理服務器帶來更多的便利,也能省卻更多的時間。本文也舉了一些簡單明了的例子,為了讓新手上路方便;目錄1、計劃任務概說;2、cron;2.1 cron 的安裝和啟動;2.1.1 在Redhat 或 Fedora等RPM包管理的系統的安裝;2.1.2 在Slackware系統中的安裝;2.1.3 cron 的開啟、停止、重新啟動方法;2.2 cron 配置文件;2.2.1 全局性配置文件;2.2.2 cron 配置計劃任務的書寫格式2.2.3 關于同一時間,同時執行多個任務的定義方法;2.2.4 對于用戶自身的cron 配置文件的

33、說明;3、計劃任務的應用范圍;4、關于本文;5、后記;6、參考文檔;7、相關文檔;+正文+1、計劃任務概說;計劃任務,是任務在約定的時間執行已經計劃好的工作,這是表面的意思。在Linux中,我們經常用到 crond 服務器來完成這項工作。cron服務器可以根據配置文件約定的時間來執行特定的作務。比如我們可以在配置文件中約定每天早上4點,對httpd 服務器重新啟動,這就是一個計劃任務;下面我們先來說說cron;2、cron;在 Linux系統中,計劃任務一般是由cron承擔,我們可以把cron設置為開機時自動啟動。cron啟動后,它會讀取它的所有配置文件(全局性配置文件 /etc/cronta

34、b,以及每個用戶的計劃任務配置文件),然后cron會根據命令和執行時間來按時來調用度工作任務。2.1 cron 的安裝和啟動;在一般情況下,cron都是系統默認安裝的,我們要學會查看軟件包是否已經安裝;2.1.1 在Redhat 或 Fedora等RPM包管理的系統的安裝;判斷系統是否已經安裝cron相關的包Fedora 5.0 系統的情況;其它版本的Fedora及Redhat的系統和這相似;rootlocalhost # rpm -qa |grep cronvixie-cron-4.1-54.FC5anacron-2.3-36.1crontabs-1.10-7.1其中vixie-cron軟件

35、包是cron的主程序,您可以通過下面的命令來了解它,其它軟件包同理;rootlocalhost beinan# rpm -ql vixie-croncrontabs 軟件包是用來安裝、卸裝、或列舉用來驅動 cron 守護進程的表格的程序。cron 守護進程檢查 crontab 文件來查看某個指定命令被調度執行的時間。如果命令已經調度,守護進程就會執行它們。了解crontabs軟件包都安裝了些什么,應該用下面的命令;rootlocalhost beinan# rpm -ql crontabs如果沒有安裝,可以從光盤中找出文件名帶有cron字樣的軟件包來安裝。rootlocalhost # rpm

36、 -ivh vixie-cron-4.1-54.FC5*rootlocalhost # rpm -ivh crontabs*也可以用yum 來在線安裝;rootlocalhost # yum install vixie-cronrootlocalhost # yum install crontabs2.1.2 在Slackware系統中的安裝;在Slackware中cron軟件包是 dcron,您可以在光盤中找出來安裝它;查看是否已經安裝了dcron軟件包,您可以這樣查看。在這里能列出軟件包詳細的安裝情況;rootlocalhost # more /var/adm/packages/dcron

37、*如果沒有安裝,請用下面的命令來安裝。在第一張安裝盤中找出dcron軟件包;rootlocalhost # installpkg dcron*.tgz2.1.3 cron 的開啟、停止、重新啟動方法;cron配置文件被修改后,想讓新文件生效,必須重新crond服務器,有兩種方法可供選擇;第一種 在Fedora或Redhat 等以RPM包管理的系統中;rootlocalhost # /etc/init.d/crond startrootlocalhost # /etc/init.d/crond stoprootlocalhost # /etc/init.d/crond restart如果想在Fe

38、dora 和 Redhat 或以這些發行版為基礎克隆的發行版,如果想自動開機運行,請用下面的辦法;rootlocalhost # chkconfig -levels 35 crond on第二種:通用rootlocalhost # pgrep crond 注:判斷crond 是否在運行;rootlocalhost # pkill crond 注:殺掉正在運行中的crond;rootlocalhost # pgrep crond 注:查看是否被殺掉了;rootlocalhost # /usr/sbin/crond 注:運行crond;2.2 cron 配置文件;cron 是一個服務器程序,我們都

39、知道Linux的服務器的配置,大多是通過配置文件來完成的,cron自然也不例外,在Redhat/Fedora 等系統中它的全局性配置文件是/etc/crontab;在Slackware系統中,全局性文件是/var/spool/cron/crontabs /root 。每個用戶也有自己的cron配置文件,我們可以通過crontab -e 來編輯它;2.2.1 全局性配置文件;下面是一個全局性的配置文件例子,以Fedora Core 5為例;rootlocalhost # more /etc/crontabSHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/

40、binMAILTO=rootHOME=/# run-parts1 * * * * root run-parts /etc/cron.hourly#2 4 * * * root run-parts /etc/cron.daily#22 4 * * 7 root run-parts /etc/cron.weekly#42 4 1 * * root run-parts /etc/cron.monthly#0,5,10,15,20,25,30,35,40,45,50,55 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg對于全局性配置文件,我們要用root權限

41、來更改,一般是通過crontab -e 來修改。但有時也并不一定是這樣的,比如Fedora Core 5 如果通過crontab -e 修改的是root用戶的cron 配置文件。所以我們要在Fedora Core 5中修改全局性配置文件可以用vi 編輯器來修改。vi的用法請參考:文件編輯器 vi在全局性配置文件中,定義了可執行命令的路徑環境變量,所用SHELL類型的定義等,這些大多不用修改;我們經常添加的是計劃任務或修改任務執行的時間等;在全局性配置文件中,我們發現有類似這些行;1 * * * * root run-parts /etc/cron.hourly 注:表示每個小時的第一分鐘,開始

42、執行/etc/hourly目錄下的可執行程序或腳本;2 4 * * * root run-parts /etc/cron.daily 注:表示每天的4點2分,開始執行/etc/cron.daily目錄下的可執行程序或腳本;22 4 * * 7 root run-parts /etc/cron.weekly 注:每年第7個周4點我22分,開始執行 /etc/cron.weekly目錄下的可執行程序或腳本;42 4 1 * * root run-parts /etc/cron.monthly 注:每月第1天的4點42分,開始執行/etc/cron.monthly目錄下的可執行程序或腳本;這些行是用

43、來在同一時間批量執行任務的,我們在以后的例子中獨立出來解說,在這里只是讓大家心中有數;2.2.2 cron 配置計劃任務的書寫格式分鐘 小時 日 月 周 用戶名 命令說明:第一段應該定義的是:分鐘,表示每個小時的第幾分鐘來執行。范圍是從0-59第二段應該定義的是:小時,表示從第幾個小時來執行,范圍是從0-23第三段應該定義的是:日期,表示從每個月的第幾天執行,范圍從1-31第四段應該定義的是:月,表示每年的第幾個月來執行,范圍從1-12第五段應該定義的是:周,表示每周的第幾天執行,范圍從0-6,其中 0表示星期日。每六段應該定義的是:用戶名,也就是執行程序要通過哪個用戶來執行,這個一般可以省略

44、;第七段應該定義的是:執行的命令和參數。注:其中用戶名可是省略,用戶名定義的是程序用哪個用戶來執行,比如mysql服務器,我們可以定義成以mysql用戶來啟動、停止、重新啟動,這時要寫上用戶名;不過對于cron來說意義不是太大,因為每個用戶都有自己的cron配置文件。有些程序的啟動必須用到root用戶,這時我們就可以修改root用戶的cron配置文件就行了。在每個用戶的配置文件中,不必指定用戶名。我們可以把計劃任務寫在全局性配置文件中,如果您想把一個計劃放入全局性配置文件中,就得改發行版所對應的cron全局配置文件,比如Fedora 5的全局性配置文件是/etc/crontab文件;每個用戶也

45、能定義自己的cron配置文件,用crontab -e 命令來定義;舉一例:讓機器在每天8點30分重新啟動;關于時間格式中有7個字段。我們可以直接更改或者添加,當然這是系統任務調用。舉個例子,比如我在每天的早上8點30分重新啟動機器,就可以在/etc/crontab中加入下面的兩句,第一句就是注釋了。以#號開始,后面寫一個自己能知道這是什么任務的備注;# reboot OS30 8 * * * root /sbin/reboot第一段應該定義的是:分鐘,表示每個小時的第幾分鐘來執行。范圍是從0-59第二段應該定義的是:小時,表示從第幾個小時來執行,范圍是從0-23第三段應該定義的是:日期,表示從

46、每個月的第幾天執行,范圍從1-31第四段應該定義的是:月,表示每年的第幾個月來執行,范圍從1-12第五段應該定義的是:周,表示每周的第幾天執行,范圍從0-6,其中 0表示星期日。每六段應該定義的是:用戶名,也就是執行程序要通過哪個用戶來執行,這個一般可以省略;第七段應該定義的是:執行的命令和參數。對比上面的例子就知道,30是不是分鐘?8是不是小時?如果有*代表的地方,表示全部,也就是說,每個月,每天,每星期都要執行。root 表示用root用戶執行,命令是/sbin/reboot ,也就是說,系統在每天 8點30分重新啟動;我們可以把每天8點30分重新啟動的計劃任務寫入cron全局性配置文件中

47、,也可以定義在root用戶自己的cron配置文件中。如果定義在root自己的配置文件,請用root身份來執行 crontab -e 來修改配置文件;crontab -e 進入修改配置文件的過程,其實和vi的用法一樣,請參看vi 的用法:文件編輯器 vi讓配置文件生效:如果讓配置文件生效,還得重新啟動cron,切記,既然每個用戶下的cron配置文件修改后。也要重新啟動cron服務器。在Fedora 和Redhat中,我們應該用;rootlocalhost # /etc/init.d/crond restart如果讓crond 在開機時運行,應該改變其運行級別;rootlocalhost # ch

48、kconfig -levels 35 crond on在Slackware中,如果開機自動運行;查看/etc/rc.d/rc.M文件是否有如的行,如果沒有就加上,大多是有的;# Start crond (Dillon's crond):if -x /usr/sbin/crond ; then /usr/sbin/crond -l10 >>/var/log/cron 2>&1如果想讓立即讓cron重啟生效,也可以用下面的辦法;rootlocalhost # pgrep crond 注:查看crond服務器是否運行;2022rootlocalhost # pkil

49、l crond 注:殺死crond;rootlocalhost # pgrep crond 注:查看crond是否退出;rootlocalhost # /usr/sbin/crond 注:啟動crond;rootlocalhost # pgrep crond 注:查看crond 是否已經運行得起來了;38832.2.3 關于同一時間,同時執行多個任務的定義方法;我們在前面已經說過,在全局性配置文件中,有類似如下的段落;1 * * * * root run-parts /etc/cron.hourly 注:表示每個小時的第一分鐘,開始執行/etc/hourly目錄下的可執行程序或腳本;2 4 *

50、 * * root run-parts /etc/cron.daily 注:表示每天的4點2分,開始執行/etc/cron.daily目錄下的可執行程序或腳本;22 4 * * 7 root run-parts /etc/cron.weekly 注:每年第7個周4點我22分,開始執行 /etc/cron.weekly目錄下的可執行程序或腳本;42 4 1 * * root run-parts /etc/cron.monthly 注:每月第1天的4點42分,開始執行/etc/cron.monthly目錄下的可執行程序或腳本;舉例來說,我想在每天5點10分來重新啟動httpd 服務器,與此同時,我

51、們也可以同時下載一個ISO文件。如果我們按書寫計劃任務的規則一條一條的來書寫,并添加到全局是有點麻煩。不如寫一個腳本放在 /etc/crond.daily目錄中。然后把其權限設置為755 (關于權限的設置,請參考:Linux 文件和目錄的屬性)。當然我們得改一改上面的 帶有/etc/cron.daily那行,改為如下;10 5 * * * root run-parts /etc/cron.daily然后我們到/etc/crond.daily目錄中創建兩個文件,一個是用來重啟httpd服務器的,如下;rootlocalhost cron.daily# touch httpd.shrootloca

52、lhost cron.daily# chmod 755 httpd.shrootlocalhost cron.daily# echo "/etc/init.d/httpd restart" > httpd.shrootlocalhost cron.daily# more httpd.sh/etc/init.d/httpd restart如果我想在每天5點20分下載FC5的鏡像,可以再創建一個文件fc5down.shrootlocalhost cron.daily# touch fc5down.shrootlocalhost cron.daily# chmod 755 fc5down.shrootlocalhost cron.daily# echo "/usr/bin/wget /." > fc5down.shrootlocalhost cr

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論