Linux系統的任務計劃
阿新 • • 發佈:2018-02-23
dconf sta 管理 comm pat sytem 命令 conf false crontab周期性任務設置
# yum install cronie -y # systemctl status crond.service # systemctl start crond.service # systemctl enable crond.service
[root@localhost etc]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed
使用crontab命令管理用戶的計劃任務
-e //編輯計劃任務列表 -u //指定所管理的計劃任務屬於哪個用戶,默認時針對當前用戶,一般只有root用戶才用權限使用此選項 -l //列表顯示計劃任務 -r //刪除計劃任務列表
用戶cron任務配置存放目錄
[root@localhost etc]# ls /var/spool/cron/
crontab -e
50 7 * * * /usr/bin/systemctl start sshd 50 22 * * * /usr/bin/systemctl stop sshd 0 * */5 * * /usr/bin/rm -rf /var/ftp/pub/* 30 7 * * 6 /usr/bin/sytemctl restart httpd 30 17 * * 1,3,5 /usr/bin/tar jcvf httpdconf.tar.bz2 /etc/httpd
註意:在設置非每分鐘都執行的任務時,“分鐘”字段也應該填寫一個具體的時間數值,而不要保留為默認的“*”,否則將會在每分鐘執行一次計劃任務。
確認root用戶的計劃任務列表的內容
[root@localhost etc]# crontab -l 50 7 * * * /usr/bin/systemctl start sshd 50 22 * * * /usr/bin/systemctl stop sshd 0 * */5 * * /usr/bin/rm -rf /var/ftp/pub/* 30 7 * * 6 /usr/bin/sytemctl restart httpd 30 17 * * 1,3,5 /usr/bin/tar jcvf httpdconf.tar.bz2 /etc/httpd
確認jerry用戶的計劃任務列表的內容
[root@localhost ~]# crontab -l -u jerry 55 23 * * 0 /bin/cp /etc/passwd /home/jerry/pwd.txt [root@localhost ~]# ls -l /var/spool/cron/jerry -rw-------. 1 jerry jerry 52 2月 23 13:38 /var/spool/cron/jerry
使用jerry用戶登錄後,查看並刪除自己的計劃任務列表
[jerry@localhost ~]$ crontab -l 55 23 * * 0 /bin/cp /etc/passwd /home/jerry/pwd.txt [jerry@localhost ~]$ crontab -r [jerry@localhost ~]$ crontab -l no crontab for jerry
當需要按照同一周期運行多個任務時,通常會將相關命令操作編寫成腳本文件,然後在計劃任務配置中加載該腳本並執行
Linux系統的任務計劃