1. 程式人生 > >Linux中的任務調度

Linux中的任務調度

bubuko chronos 文件中 調度器 roo 信息 技術分享 一次 標準輸入

1.crond,linux中的任務調度器

crond的概念和crontab是不可分割的。crontab是一個命令,常見於Unix和類Unix的操作系統之中,用於設置周期性被執行的指令。該命令從標準輸入設備讀取指令,並將其存放於“crontab”文件中,以供之後讀取和執行。該詞來源於希臘語chronos(χρ?νος),原意是時間。而crond正是它的守護進程。 --來源:百度百科

2.自定義周期性可執行任務

在Linux中我們自己定義自己想要定期執行的任務,這也是Linux強大之處。技術分享圖片

crontab文件放在/etc/目錄中。我們可以通過cat命令查看crontab文件中的內容,從圖中我們可以看到,“#”號是註釋的意思,也就是說“#”後面的字符系統都不會進行解析。第一行中的SHELL=/bin/sh指定了系統的shell版本,這裏指定的sh版本。第二行的意思是指定環境變量,因為crond是有系統自動執行所指定的任務,所以系統在自動執行時是從crontab文件中查找環境的。如果我們手動在終端運行命令來執行任務,那麽系統可以找到相應的環境變量,這是因為我們已經將環境變量寫入到系統文件中了。

技術分享圖片

從圖中我們可以看到,我們在crontab文件中添加了最後一行信息,

*/3 * * * * root /sbin/reboot

第一個*/3 的意思是沒隔3分鐘

之後有4個*號,*號代表所有可能的值。整句話的意思就是讓系統每隔3分鐘就從起一次,且只有root用戶才能執行該操作。

Linux中的任務調度