您好,登錄后才能下訂單哦!
這篇文章主要介紹linux下的定時任務可以分為幾類,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
定時任務是操作系統提供給我們的一個非常好的功能,我們經常用定時任務來處理一些事情,比如每天定時備份網站數據、每個月執行下數據統計程序、監控服務器的運行情況(發生錯誤時給管理員發消息通知)等等,這些都需要定時任務來完成。
linux下的定時任務分為兩大類:只執行一次的定時任務,周期性執行的定時任務。今天,我們一起來看看只執行一次的定時任務,關于周期性執行的定時任務,將會在接下來的一篇文章中表述。
atd服務
只執行一次的計劃任務,我們是通過at命令來完成的,想要執行at命令則需要先開啟atd服務。查看atd服務的運行狀況及開啟atd服務的命令如下:
# 查看atd服務狀況 # systemctl status atd # 開啟atd服務 # systemctl start atd
at權限管理
當使用at來產生新的任務時,該任務就會以文本文件形式被放到/var/spool/at目錄下。
# ll /var/spool/at total 8 -rwx------ 1 root root 2890 Nov 7 16:30 a0000201981b23 <===== at產生的文件 drwx------ 2 daemon daemon 4096 Nov 7 16:27 spool
對于at的權限管理,系統有兩個專門的文件來指定。這兩個文件,其實就和我們理解的黑白名單一樣。這兩個文件分別是/etc/at.deny(黑名單)、/etc/at.allow(白名單)。系統默認的at.deny的內容為空,而對于/etc/at.allow系統默認是不存在的。如果這兩個文件都不存在,則只有root用戶可以使用at命令。
at命令詳解
我們來看看如何使用at這個命令。
設置計劃任務
使用at命令設置計劃任務 at [-m] 時間,常用的時間格式——HH:MM YYYY-MM-DD,此外還可以使用英文的now +1 minutes類似形式設置。
# at 17:00 2020-11-11 at> date >> /root/at.txt at> <EOT> <=== 這里輸入ctrl+d來結束 job 3 at Wed Nov 11 17:00:00 2020 # at now +5 minutes at> date >> /root/at.txt at> <EOT> job 4 at Sat Nov 7 17:01:00 2020
查看計劃任務
使用-l選項可查看計劃任務,如果想看具體的命令可以使用-c選項。除此之外,還可以使用atq命令來查看。
# at -l 6 Sat Nov 7 17:13:00 2020 a root 3 Wed Nov 11 17:00:00 2020 a root # atq 6 Sat Nov 7 17:13:00 2020 a root 3 Wed Nov 11 17:00:00 2020 a root
移除計劃任務
還未執行的計劃任務,可以通過at -d或atrm來刪除。
# at -d 3 # atrm 6
使用at來生成計劃任務還有一個好處就是,可以完成脫機管理工作。
以上是linux下的定時任務可以分為幾類的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。