日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)linux教程:4.4 計(jì)劃任務(wù)服務(wù)程序

經(jīng)驗(yàn)豐富的系統(tǒng)運(yùn)維工程師可以使得Linux在無(wú)需人為介入的情況下,在指定的時(shí)間段自動(dòng)啟用或停止某些服務(wù)或命令,從而實(shí)現(xiàn)運(yùn)維的自動(dòng)化。盡管我們現(xiàn)在已經(jīng)有了功能彪悍的腳本程序來(lái)執(zhí)行一些批處理工作,但是,如果仍然需要在每天凌晨?jī)牲c(diǎn)敲擊鍵盤回車鍵來(lái)執(zhí)行這個(gè)腳本程序,這簡(jiǎn)直太痛苦了(當(dāng)然,也可以訓(xùn)練您的小貓?jiān)诎胍拱聪禄剀囨I)。接下來(lái),劉遄老師將向大家講解如何設(shè)置服務(wù)器的計(jì)劃任務(wù)服務(wù),把周期性、規(guī)律性的工作交給系統(tǒng)自動(dòng)完成。

創(chuàng)新互聯(lián)致力于成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站,成都網(wǎng)站設(shè)計(jì),集團(tuán)網(wǎng)站建設(shè)等服務(wù)標(biāo)準(zhǔn)化,推過(guò)標(biāo)準(zhǔn)化降低中小企業(yè)的建站的成本,并持續(xù)提升建站的定制化服務(wù)水平進(jìn)行質(zhì)量交付,讓企業(yè)網(wǎng)站從市場(chǎng)競(jìng)爭(zhēng)中脫穎而出。 選擇創(chuàng)新互聯(lián),就選擇了安全、穩(wěn)定、美觀的網(wǎng)站建設(shè)服務(wù)!

計(jì)劃任務(wù)分為一次性計(jì)劃任務(wù)與長(zhǎng)期性計(jì)劃任務(wù),大家可以按照如下方式理解。

一次性計(jì)劃任務(wù):今晚11點(diǎn)30分開啟網(wǎng)站服務(wù)。

長(zhǎng)期性計(jì)劃任務(wù):每周一的凌晨3點(diǎn)25分把/home/wwwroot目錄打包備份為backup.tar.gz。

顧名思義,一次性計(jì)劃任務(wù)只執(zhí)行一次,一般用于滿足臨時(shí)的工作需求。我們可以用at命令實(shí)現(xiàn)這種功能,只需要寫成“at 時(shí)間”的形式就可以。如果想要查看已設(shè)置好但還未執(zhí)行的一次性計(jì)劃任務(wù),可以使用“at -l”命令;要想將其刪除,可以用“atrm 任務(wù)序號(hào)”。

at命令的參數(shù)及其作用

參數(shù)作用
-f指定包含命令的任務(wù)文件
-q指定新任務(wù)名稱
-l顯示待執(zhí)行任務(wù)列表
-d刪除指定待執(zhí)行任務(wù)
-m任務(wù)執(zhí)行后給用戶發(fā)郵件

在使用at命令來(lái)設(shè)置一次性計(jì)劃任務(wù)時(shí),默認(rèn)采用的是交互式方法。例如,使用下述命令將系統(tǒng)設(shè)置為在今晚23:30分自動(dòng)重啟網(wǎng)站服務(wù)。

    [root@linuxprobe ~]# at 23:30
    at > systemctl restart httpd
    at > 此處請(qǐng)同時(shí)按下Ctrl+d來(lái)結(jié)束編寫計(jì)劃任務(wù)
    job 3 at Mon Apr 27 23:30:00 2015
    [root@linuxprobe ~]# at -l
    3 Mon Apr 27 23:30:00 2016 a root

如果讀者想挑戰(zhàn)一下難度更大但簡(jiǎn)捷性更高的方式,可以把前面學(xué)習(xí)的管道符(任意門)放到兩條命令之間,讓at命令接收前面echo命令的輸出信息,以達(dá)到通過(guò)非交互式的方式創(chuàng)建計(jì)劃一次性任務(wù)的目的。

    [root@linuxprobe ~]# echo "systemctl restart httpd" | at 23:30
    job 4 at Mon Apr 27 23:30:00 2015
    [root@linuxprobe ~]# at -l
    3 Mon Apr 27 23:30:00 2016 a root
    4 Mon Apr 27 23:30:00 2016 a root

如果我們不小心設(shè)置了兩個(gè)一次性計(jì)劃任務(wù),可以使用下面的命令輕松刪除其中一個(gè):

    [root@linuxprobe ~]# atrm 3
    [root@linuxprobe ~]# at -l
    4 Mon Apr 27 23:30:00 2016 a root

如果我們希望Linux系統(tǒng)能夠周期性地、有規(guī)律地執(zhí)行某些具體的任務(wù),那么Linux系統(tǒng)中默認(rèn)啟用的crond服務(wù)簡(jiǎn)直再適合不過(guò)了。創(chuàng)建、編輯計(jì)劃任務(wù)的命令為“crontab -e”,查看當(dāng)前計(jì)劃任務(wù)的命令為“crontab -l”,刪除某條計(jì)劃任務(wù)的命令為“crontab -r”。另外,如果您是以管理員的身份登錄的系統(tǒng),還可以在crontab命令中加上-u參數(shù)來(lái)編輯他人的計(jì)劃任務(wù)。

在正式部署計(jì)劃任務(wù)前,請(qǐng)先跟劉遄老師念一下口訣“分、時(shí)、日、月、星期 命令”。這是使用crond服務(wù)設(shè)置任務(wù)的參數(shù)格式(其格式見(jiàn)表4-6)。需要注意的是,如果有些字段沒(méi)有設(shè)置,則需要使用星號(hào)(*)占位,如圖4-23所示。

圖4-23 使用crond設(shè)置任務(wù)的參數(shù)格式

表4-6 使用crond設(shè)置任務(wù)的參數(shù)字段說(shuō)明

字段說(shuō)明
分鐘取值為0~59的整數(shù)
小時(shí)取值為0~23的任意整數(shù)
日期取值為1~31的任意整數(shù)
月份取值為1~12的任意整數(shù)
星期取值為0~7的任意整數(shù),其中0與7均為星期日
命令要執(zhí)行的命令或程序腳本

假設(shè)在每周一、三、五的凌晨3點(diǎn)25分,都需要使用tar命令把某個(gè)網(wǎng)站的數(shù)據(jù)目錄進(jìn)行打包處理,使其作為一個(gè)備份文件。我們可以使用crontab -e命令來(lái)創(chuàng)建計(jì)劃任務(wù)。為自己創(chuàng)建計(jì)劃任務(wù)無(wú)需使用-u參數(shù),具體的實(shí)現(xiàn)效果的參數(shù)如crontab -l命令結(jié)果所示:

    [root@linuxprobe ~]# crontab -e
    no crontab for root - using an empty one
    crontab: installing new crontab
    [root@linuxprobe ~]# crontab -l
    25 3 * * 1,3,5 /usr/bin/tar -czvf backup.tar.gz /home/wwwroot

需要說(shuō)明的是,除了用逗號(hào)(,)來(lái)分別表示多個(gè)時(shí)間段,例如“8,9,12”表示8月、9月和12月。還可以用減號(hào)(-)來(lái)表示一段連續(xù)的時(shí)間周期(例如字段“日”的取值為“12-15”,則表示每月的12~15日)。以及用除號(hào)(/)表示執(zhí)行任務(wù)的間隔時(shí)間(例如“*/2”表示每隔2分鐘執(zhí)行一次任務(wù))。

如果在crond服務(wù)中需要同時(shí)包含多條計(jì)劃任務(wù)的命令語(yǔ)句,應(yīng)每行僅寫一條。例如我們?cè)偬砑右粭l計(jì)劃任務(wù),它的功能是每周一至周五的凌晨1點(diǎn)鐘自動(dòng)清空/tmp目錄內(nèi)的所有文件。尤其需要注意的是,在crond服務(wù)的計(jì)劃任務(wù)參數(shù)中,所有命令一定要用絕對(duì)路徑的方式來(lái)寫,如果不知道絕對(duì)路徑,請(qǐng)用whereis命令進(jìn)行查詢,rm命令路徑為下面輸出信息中加粗部分。

    [root@linuxprobe ~]# whereis rm
    rm: /usr/bin/rm /usr/share/man/man1/rm.1.gz /usr/share/man/man1p/rm.1p.gz
    [root@linuxprobe ~]# crontab -e
    crontab: installing new crontab
    [root@linuxprobe ~]# crontab -l
    25 3 * * 1,3,5 /usr/bin/tar -czvf backup.tar.gz /home/wwwroot
    0 1 * * 1-5 /usr/bin/rm -rf /tmp/*

在本節(jié)最后,劉遄老師再來(lái)啰嗦幾句在工作中使用計(jì)劃服務(wù)的注意事項(xiàng)。

在crond服務(wù)的配置參數(shù)中,可以像Shell腳本那樣以#號(hào)開頭寫上注釋信息,這樣在日后回顧這段命令代碼時(shí)可以快速了解其功能、需求以及編寫人員等重要信息。

計(jì)劃任務(wù)中的“分”字段必須有數(shù)值,絕對(duì)不能為空或是*號(hào),而“日”和“星期”字段不能同時(shí)使用,否則就會(huì)發(fā)生沖突。

最后再啰嗦一句,想必讀者也已經(jīng)發(fā)現(xiàn)了,諸如crond在內(nèi)的很多服務(wù)默認(rèn)調(diào)用的是Vim編輯器,相信大家現(xiàn)在能進(jìn)一步體會(huì)到在Linux系統(tǒng)中掌握Vim文本編輯器的好處了吧。所以請(qǐng)大家一定要在徹底掌握Vim編碼器之后再學(xué)習(xí)下一章。


文章題目:創(chuàng)新互聯(lián)linux教程:4.4 計(jì)劃任務(wù)服務(wù)程序
網(wǎng)頁(yè)地址:http://www.dlmjj.cn/article/dpepjid.html