Linux(RadHat)基礎學習—延時任務和定時任務
阿新 • • 發佈:2018-08-01
str 命令 一次 vim oot 每天 指令2 conf 回車 1.系統延時任務
1.at命令
at命令發起的延時任務都時一次性的
at + time[回車]
指令1[回車]
指令2[回車]
...[回車]
按ctrl+d發起動作
例子1:
[root@xyz ~]# at 11:11 ##設定人物執行時間(當前用戶是誰就是誰發起的任務)
at> rm -fr /mnt/* ##延時動作(刪除/mnt下所有內容)
at> ##ctrl+d發起動作
例子2:
[root@xyz ~]# at now+1min ##設定人物執行時間為1分鐘後 at> rm -fr /mnt/* ##延時動作 at> ##ctrl+d表示發起動作
2.一些at命令
at -l | atq #查看當前任務
atrm | at -d #取消指定任務
at -c #查看任務內容
at now+1min #延遲一分鐘
at -f file #延遲執行文件中的內容
at -m #延遲命令沒有輸出時仍然發送郵件給執行者
at -M #延遲命令有輸出時但不發送郵件給執行者
當任務有輸出的時候,輸出會以郵件的形式發送給at人物的發起人。
查看郵件:mail -u root
然後按數字選擇查看第幾封郵件,按q退出。
at 命令的黑白名單
/etc/at.deny ##用戶黑名單,在此名單中出現的用戶不能執行at命令
/etc/at.allow ##用戶白名單,名單默認不存在,但名單一旦出現,黑名單失效,且普通用戶不能執行at
##默認系統所有用戶不能執行at,只有在名單中出現的用戶可以使用at命令
2.系統定時任務
定時任務時永久的
定時任務程序crond,在系統中每分鐘做任務掃描
系統控制crontab的服務
crontab.service ##當程序開啟時定時任務生效
1.發起方式一:crontab命令
crontab -u username -e [回車] ##用戶發起任務 crontab -u username -r [回車] ##刪除任務 crontab -u username -l [回車] ##查看任務
輸入執行任務:時間+動作
* * * * *
這五個*號分別表示分鐘、時鐘、日,月、周幾
例如:
* * * * * 動作命令 #每分鐘執行一次
* * */2 * * 動作命令 #每隔兩天
* 08-17/2 * * * 動作命令 #8點到17點每隔2小時執行一次
*/2 09-17 * * * 動作命令 #每天9點到17點美隔2分鐘執行一次
*/2 09-17 * * 5 動作命令 #每周周五9點到17點每2分鐘執行一次
*/2 09-17 1 3,5 5 動作命令 #3月和5月的每周周五和每月1號9點到17點美2分鐘執行一次
定時任務存儲文件:
/var/spool/cron/目錄下,有記錄各個用戶發起的定時任務的文件
2.發起方式二:文件設置
編輯新建文件:vim /etc/cron.d/filename
* * * * * root rm -fr /mnt/* ##超級用戶每分鐘清理一次/mnt
在 /etc/目錄下有cron.daily、cron.hourly、cron.monthly 、cron.weekly 這幾個文件
在這些文件下寫執行命令,則會對應在每天、或每小時、或每月、或每周執行
crontab 命令的黑白名單
/etc/cron.deny ##用戶黑名單,在此名單中出現的用戶不能執行crontab命令
/etc/cron.allow ##用戶白名單,名單默認不存在,但名單一旦出現,黑名單失效,只有在名單中的用戶可以,並且/etc/at.deny失效
##這兩個名單都不會影響在/etc/cron.d/目錄中定時任務的執行。
3.系統臨時文件的管理
系統中服務在正常運行時會產生臨時文件
編輯文件:
vim /usr/lib/tmpfiles.d/westos.conf ##系統中臨時文件的配置
說明:
d /mnt/westos 777 root root 10s
(1)文件類型 (2)文件名稱 (3)文件權限 (4)文件所有人 (5)文件所有組 (6)文件存在時間
執行命令:
systemd-tmpfiles --create /usr/lib/tmpfiles.d/* ##執行臨時文件配置
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/* ##清理臨時文件
Linux(RadHat)基礎學習—延時任務和定時任務