計劃任務
一次性的計劃任務
循環性計劃任務
一次性的計劃任務
安裝軟件:
#yum install at -y
啓動服務:
# systemctl start atd.service
# systemctl status atd.service
# systemctl enable atd.service
創建計劃任務:
# at 11:00
at> rm -rf /tmp/*
at> <EOT> //ctrl+d
job 1 at Fri Dec 15 11:00:00 2017
查看:
# at -l
2 Fri Dec 15 11:05:00 2017 a root
# cat /var/spool/at/a000030180daa8
刪除計劃任務:
方式1
# at -r 3
-r 工作號 //刪除 3是工作號
方式2
# atrm 3
方式3
直接刪除文件
at後面各種時間寫法:
#man at
循環性計劃任務:
用戶級別
系統級別
安裝軟件
yum -y install crontabs
啓動服務
rhel5/6:
/etc/init.d/crond status
# /etc/init.d/crond start
rhel7:
# systemctl start crond.service
# systemctl status crond.service
# systemctl enable crond.service
開機啓動(rhel5/6)
#chkconfig crond on
創建計劃任務:用戶級別的計劃任務
#crontab -u 用戶 -e
-u 指定用戶 默認不寫就是root
#crontab -e
配置分兩部分 拿空格分開
第一部分:時間
分鐘 小時 日 月 周
範圍 0-59 0-23 1-31 1-12 0-7
上面的時間範圍可以查看man手冊: #man 5 crontab
各種時間寫法:
5 10
5 10 8
1 5 7 5
1,5,9
8-12
5-20,40
8-12,20-25
/5 *
ps: * 表示每...
, 取不同的時間點
- 表示範圍
*/5 每5分鐘
第二部分:動作
把上面規定的時間要執行的命令寫在這裏,當然包括腳本(最常用),命令最好要寫絕對路徑
查看計劃任務:兩種方法
1)#crontab -l
-u 用戶名 查看某一個賬戶的計劃任務
2)#cat /var/spool/cron/root
計劃任務刪除:兩種方法
1)# crontab -r -u wing
-r 刪除
-u 指定用戶
#crontab -e -u tom
2)# rm -f /var/spool/cron/root
計劃任務的權限控制
#cat /etc/cron.deny
如果這個文件存在,凡是寫到這個文件裏面的賬戶不允許執行crontab命令
#cat /etc/cron.allow
如果這個文件存在,沒有寫到這個文件裏面的賬戶不允許執行crontab命令
如果有allow文件,那不管deny是否存在,都是隻允許allow文件裏面的用戶
at也有權限控制(用法跟crontab一樣,/etc/at.allow /etc/at.deny)
系統級別的計劃任務:
# ls /etc/cron
cron.daily/ cron.hourly/
cron.d/ cron.monthly/ cron.weekly/
# cat /etc/anacron