1. 程式人生 > >延時任務,定時任務crontab以及定時臨時任務的設定

延時任務,定時任務crontab以及定時臨時任務的設定

      jobs

1.延時:
at 時間          #在該時間要進行操作
at now+5min      #在5分鐘後要進行

at 16:00
>touch /mnt/file{1..3} #要做的操作
>ctrl+d(按)
at  -l                   #檢視該操作的pid
at  -c  3              #檢視3為什麼操作;即要幹什麼
at  -r  3               #刪除該操作

 vim  /etc/at.deny      #編輯at配置檔案,指定黑名單使用者不能執行at操作
 vim  /etc/at.allow      #白名單出現,黑名單失效,只有白名單使用者和超級

                                使用者才能執行at操作

2.定時任務crontab

1.命令列執行定時任務:
[[email protected] ~]# crontab -u root -e
crontab: installing new crontab  #建立root使用者定時任務
分鐘(0-60)  小時(0-23)   天(0-31)    月(1-12)    周(0-7)
*               *              *             *            *   #表每一天的每一分鐘
*               08-17          *             *            *  
#表每天的8:00-17:00的每一分鐘
*/2             08-17          1,15          *            3
#表每隔兩分鐘在每個月的1號,15號,以及每個週三的8:00到17:00
*               08-17          1,15         3-5          3
#表在3-5月的每個週三和1,15號在8:00到17:00每分鐘
[

[email protected] ~]# crontab -u root -l #檢視root使用者定時任務
* * * * *  rm -f  /mnt/*         

*/2 * * * * touch /mnt/file{1..3}


[[email protected] ~]# crontab -u root -r  #刪除root執行的定時任務

[[email protected] ~]# vim /etc/cron.deny

linux

[[email protected] ~]# su - linux

[[email protected] ~]$ crontab -e

You (linux) are not allowed to use this program (crontab)
See crontab(1) for more information

[[email protected] ~]# crontab -u linux -e  #允許,因為是超級指定linux去執行cron

[[email protected] ~]# vim /etc/cron.allow  #cron白名單出現,黑名單失效

[[email protected] ~]# su - linux

[[email protected] ~]$ crontab  -e         #可以執行

2.在/etc/cron.d/目錄下面執行定時任務

[[email protected] ~]# cd /etc/cron.d#系統級的

[[email protected] cron.d]# ls

0hourly  raid-check  sysstat  unbound-anchor

[[email protected] cron.d]# vim westos

[[email protected] cron.d]# cat westos

01 * * * * root  touch /mnt/file{1..5} #每一分鐘的01秒建立/mnt/檔案


#cat /var/spool/cron/root  #檢視root使用者要執行的定時任務,使用者級的定時任務目錄

[[email protected] mnt]# cat /var/spool/cron/root
01 * * * * touch /mnt/file{1..5}

3.臨時定時任務的管理

[[email protected] cron.d]# cd /usr/lib/tmpfiles.d/

[[email protected] tmpfiles.d]# systemd-tmpfiles --create /usr/lib/tmpfiles.d/*                       #建立

[[email protected] tmpfiles.d]# vim westos.conf  
d /mnt/westos 1777 root root 8s
型別  名稱     許可權  所有人 所在組 存在時間

#在/mnt/westos目錄下的檔案必須在建立8s之後才能被clean清理

[[email protected] tmpfiles.d]# mkdir /mnt/westos

[[email protected] tmpfiles.d]# touch /mnt/westos/file

[[email protected] tmpfiles.d]# systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*#清理

[[email protected] tmpfiles.d]# cat westos.conf

d /mnt/westos 1777 root root 8s

[[email protected] tmpfiles.d]#  systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*

[[email protected] tmpfiles.d]#  systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*


[[email protected] mnt]# watch -n 1 ls -lR /mnt/ -l   #監控