如何設置Linux(Centos)系統定期任務(corntab詳細用法) 1.Corntab簡介 Linux 系統則是由 cron (crond) 這個系統服務來控制的。Linux 系統上面原本就有非常多的計劃性工作,因此這個系統服務是預設啟動的。另外,由於使用者自己也可以設置計劃任務,所以,Lin ...
如何設置Linux(Centos)系統定期任務(corntab詳細用法)
1.Corntab簡介
Linux 系統則是由 cron (crond) 這個系統服務來控制的。Linux 系統上面原本就有非常多的計劃性工作,因此這個系統服務是預設啟動的。另外,由於使用者自己也可以設置計劃任務,所以,Linux系統也提供了使用者控制計劃任務的命令:crontab命令。
Linux中有分為系統任務和用戶任務,系統任務是針對系統周期性的進行的任務,對於這些在進行修改的時候需要謹慎,在用戶任務中是為了避免用戶在修改的時候出現錯誤,從而影響系統而設置的,提供進行修改的地方。
/ect/corntab文件是系統任務,在改文件進行的修改會在所以用戶下生效,使用者許可權文件(用戶任務文件):/etc/cron.deny(該文件中所列用戶不允許使用crontab命令);/etc/cron.allow(該文件中所列用戶允許使用crontab命令);/var/spool/cron/(所有用戶crontab文件存放的目錄,以用戶名命名)
2、安裝crontab:
正常都是已經安裝的,如果沒有使用yum安裝
yum install crontabs
服務操作說明:
systemctl start crond.service //啟動服務
systemctl stop crond.service //關閉服務
systemctl restart crond.service //重啟服務
systemctl reload crond.service //重新載入配置
systemctl status crond.service //查看服務
查看crontab服務是否已設置為開機啟動,執行命令:
ntsysv
在選項中前面有x的都是表示已經加入開機自動啟動。
加入開機自動啟動:
chkconfig –level 35 crond on
3、crontab文件寫法
/etc/crontab開頭都是:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=HOME=root
在文件中會有一段註釋大概的意思就說如下圖:
根據自己的需要在文件下方寫下需要進行定時的功能就可以。例如:我在文件中加入:
* */1 * * * root /etc/cron.hourly/check-core-dir
意思是在每個小時定期執行存放在/etc/cron.hourly中的check-core-dir這個腳本,其他的類似的做法,當然也可以執行第幾個小時進行執行,只需要把/去掉。