共計(jì) 2846 個(gè)字符,預(yù)計(jì)需要花費(fèi) 8 分鐘才能閱讀完成。
這篇文章給大家分享的是有關(guān) linux 如何配置定時(shí)任務(wù) cron 的內(nèi)容。丸趣 TV 小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨丸趣 TV 小編過來看看吧。
實(shí)現(xiàn) linux 定時(shí)任務(wù)有:cron、anacron、at, 使用最多的是 cron 任務(wù)
1. 名詞解釋
cron– 服務(wù)名;crond–linux 下用來周期性的執(zhí)行某種任務(wù)或等待處理某些事件的一個(gè)守護(hù)進(jìn)程,與 windows 下的計(jì)劃任務(wù)類似;crontab– 是定制好的計(jì)劃任務(wù)表。
2. 軟件包安裝
要使用 cron 服務(wù),先要安裝 vixie-cron 軟件包和 crontabs 軟件包,兩個(gè)軟件包作用如下:
vixie-cron 軟件包是 cron 的主程序。crontabs 軟件包是用來安裝、卸裝、或列舉用來驅(qū)動(dòng) cron 守護(hù)進(jìn)程的表格的程序。
查看是否安裝了 cron 軟件包:rpm-qa|grep vixie-cron
查看是否安裝了 crontabs 軟件包:rpm-qa|grep crontabs
如果沒有安裝,則執(zhí)行如下命令安裝軟件包(軟件包必須存在)
rpm-ivh vixie-cron-4.1-54.FC5
rpm-ivh crontabs
如果本地沒有安裝包,在能夠連網(wǎng)的情況下可以在線安裝
yum install vixie-cron
yum install crontabs
3. 查看 crond 服務(wù)是否運(yùn)行
pgrep crond 或 /sbin/service crond status 或 ps-elf|grep crond|grep-v grep
4.crond 服務(wù)操作命令
/sbin/service crond start// 啟動(dòng)服務(wù)
/sbin/service crond stop// 關(guān)閉服務(wù)
/sbin/service crond restart// 重啟服務(wù)
/sbin/service crond reload// 重新載入配置
5. 配置定時(shí)任務(wù)
cron 有兩個(gè)配置文件,一個(gè)是一個(gè)全局配置文件(/etc/crontab),是針對系統(tǒng)任務(wù)的;一組是 crontab 命令生成的配置文件(/var/spool/cron 下的文件),是針對某個(gè)用戶的. 定時(shí)任務(wù)配置到任意一個(gè)中都可以。
查看全局配置文件配置情況:cat/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
———————————————-
查看用戶下的定時(shí)任務(wù):crontab- l 或 cat/var/spool/cron/ 用戶名
6.crontab 任務(wù)配置基本格式
command
分鐘 (0-59) 小時(shí) (0-23) 日期 (1-31) 月份 (1-12) 星期 (0-6,0 代表星期天) 命令
第 1 列表示分鐘 1~59 每分鐘用或者 / 1 表示
第 2 列表示小時(shí) 1~23(0 表示 0 點(diǎn))
第 3 列表示日期 1~31
第 4 列表示月份 1~12
第 5 列標(biāo)識(shí)號(hào)星期 0~6(0 表示星期天)
第 6 列要運(yùn)行的命令
在以上任何值中,星號(hào)()可以用來代表所有有效的值。譬如,月份值中的星號(hào)意味著在滿足其它制約條件后每月都執(zhí)行該命令。
整數(shù)間的短線(-)指定一個(gè)整數(shù)范圍。譬如,1- 4 意味著整數(shù) 1、2、3、4。
用逗號(hào)(,)隔開的一系列值指定一個(gè)列表。譬如,3,4,6,8 標(biāo)明這四個(gè)指定的整數(shù)。
正斜線(/)可以用來指定間隔頻率。在范圍后加上 / integer 意味著在范圍內(nèi)可以跳過 integer。譬如,0-59/ 2 可以用來在分鐘字段定義每兩分鐘。間隔頻率值還可以和星號(hào)一起使用。例如,/ 3 的值可以用在月份字段中表示每三個(gè)月運(yùn)行一次任務(wù)。
開頭為井號(hào)(#)的行是注釋,不會(huì)被處理
在 crontab 文件里面,每一行代表一項(xiàng)任務(wù),每行的每個(gè)字段代表一項(xiàng)設(shè)置,它的格式共分為六個(gè)字段,前五段是時(shí)間設(shè)定段,第六段是要執(zhí)行的命令段,每個(gè)字段之間用空格分割,沒用的段用代替,格式如下:
m h dom mon dow user command
其中:
m:表示分鐘,可以是從 0 到 59 之間的任何整數(shù)。
h:表示小時(shí),可以是從 0 到 23 之間的任何整數(shù)。
dom:表示日期,可以是從 1 到 31 之間的任何整數(shù)。
mon:表示月份,可以是從 1 到 12 之間的任何整數(shù)。
dow:表示星期幾,可以是從 0 到 7 之間的任何整數(shù),這里的 0 或 7 代表星期日。
user: 表示執(zhí)行的用戶。
7. 使用實(shí)例
實(shí)例 1:每 1 分鐘執(zhí)行一次 command
命令:command
實(shí)例 2:每小時(shí)的第 3 和第 15 分鐘執(zhí)行
命令:3,15 command
實(shí)例 3:在上午 8 點(diǎn)到 11 點(diǎn)的第 3 和第 15 分鐘執(zhí)行
命令:3,15 8-11 command
實(shí)例 4:每隔兩天的上午 8 點(diǎn)到 11 點(diǎn)的第 3 和第 15 分鐘執(zhí)行
命令:3,15 8-11/2 command
實(shí)例 5:每個(gè)星期一的上午 8 點(diǎn)到 11 點(diǎn)的第 3 和第 15 分鐘執(zhí)行
命令:3,15 8-11 1 command
實(shí)例 6:每晚的 21:30 重啟 smb
命令:30 21/etc/init.d/smb restart
實(shí)例 7:每月 1、10、22 日的 4:45 重啟 smb
命令:45 4 1,10,22/etc/init.d/smb restart
實(shí)例 8:每周六、周日的 1:10 重啟 smb
命令:10 1 6,0/etc/init.d/smb restart
實(shí)例 9:每天 18:00 至 23:00 之間每隔 30 分鐘重啟 smb
命令:0,30 18-23/etc/init.d/smb restart
實(shí)例 10:每星期六的晚上 11:00 pm 重啟 smb
命令:0 23 6/etc/init.d/smb restart
實(shí)例 11:每一小時(shí)重啟 smb
命令:/1/etc/init.d/smb restart
實(shí)例 12:晚上 11 點(diǎn)到早上 7 點(diǎn)之間,每隔一小時(shí)重啟 smb
命令:23-7/1/etc/init.d/smb restart
實(shí)例 13:每月的 4 號(hào)與每周一到周三的 11 點(diǎn)重啟 smb
命令:0 11 4 mon-wed/etc/init.d/smb restart
實(shí)例 14:一月一號(hào)的 4 點(diǎn)重啟 smb
命令:0 4 1 jan/etc/init.d/smb restart
實(shí)例 15:每小時(shí)執(zhí)行 /etc/cron.hourly 目錄內(nèi)的腳本
命令:01 root run-parts/etc/cron.hourly
說明:
run-parts 這個(gè)參數(shù)了,如果去掉這個(gè)參數(shù)的話,后面就可以寫要運(yùn)行的某個(gè)腳本名,而不是目錄名了
感謝各位的閱讀!關(guān)于“l(fā)inux 如何配置定時(shí)任務(wù) cron”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!