使用rpm命令從CentOS系統盤安裝計劃任務程式crontab
概述
利用“任務計劃”,可以將任何指令碼、程式或文件安排在某個最方便的時間執行。通俗的講就是定時執行某個指令碼、程式。
常見用途
定時關機
定時檢查更新
定時對系統配置、資料庫、日誌進行備份
定時清理垃圾檔案
檢測是否已安裝
估計是最小化安裝的時候預設不會安裝此程式,公司的環境有的已經安裝了,有的卻沒有。
# crontab
-bash: crontab: command not found
執行 crontab 命令如果報 command not found,就表明沒有安裝.
準備檔案
將光碟CentOS-6.5-x86_64-bin-DVD1放入光碟機,進入Packages目錄,或者將以下檔案複製到要安裝的系統中:
(1/5): cronie-1.4.4-15.el6.x86_64.rpm
(2/5): cronie-anacron-1.4.4-15.el6.x86_64.rpm
(3/5): crontabs-1.10-33.el6.noarch.rpm
(4/5): procmail-3.22-25.1.el6_5.1.x86_64.rpm
(5/5): sendmail-8.14.4-9.el6.x86_64.rpm
開始安裝
# rpm -ivh procmail-3.22-25.1.el6.x86_64.rpm
Preparing... ###### ##################################### [100%]
1:procmail ########################################### [100%]
# rpm -ivh sendmail-8.14.4-8.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:sendmail ############################## ############# [100%]
# rpm -ivh cronie-1.4.4-12.el6.x86_64.rpm
error: Failed dependencies:
dailyjobs is needed by cronie-1.4.4-12.el6.x86_64
安裝cronie-1.4.4-12.el6.x86_64.rpm時提示缺少依賴項,經過測試可以直接使用“–nodeps”選項忽略它。
# rpm -ivh cronie-1.4.4-12.el6.x86_64.rpm --nodeps
Preparing... ########################################### [100%]
1:cronie ########################################### [100%]
# rpm -ivh crontabs-1.10-33.el6.noarch.rpm
Preparing... ########################################### [100%]
1:crontabs ########################################### [100%]
# rpm -ivh cronie-anacron-1.4.4-12.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:cronie-anacron ########################################### [100%]
[root@localhost cron]# crontab -l
no crontab for root
檢視命令幫助
crontab 並不支援-h或–help之類的選項,不過還是可以通過它檢視命令幫助
# crontab -h
crontab:無效選項 -- h
crontab: usage error: unrecognized option
usage: crontab [-u user] file
crontab [-u user] [ -e | -l | -r ]
(default operation is replace, per 1003.2)
-e (edit user's crontab)
-l (list user's crontab)
-r (delete user's crontab)
-i (prompt before deleting user's crontab)
-s (selinux context)
也可以使用 info crontab 命令檢視詳細的幫助資訊。
cron服務提供crontab命令來設定cron服務的,以下是這個命令的一些引數與說明:
crontab -u //設定某個使用者的cron服務,一般root使用者在執行這個命令的時候需要此引數
crontab -l //列出某個使用者cron服務的詳細內容
crontab -r //刪除沒個使用者的cron服務
crontab -e //編輯某個使用者的cron服務
比如說root檢視自己的cron設定:crontab -u root -l
再例如,root想刪除fred的cron設定:crontab -u fred -r
在編輯cron服務時,編輯的內容有一些格式和約定,輸入:crontab -u root -e
進入vi編輯模式,編輯的內容一定要符合下面的格式:/1 * * * ls >> /tmp/ls.txt
服務狀態控制
/sbin/service crond start //啟動服務
/sbin/service crond stop //關閉服務
/sbin/service crond restart //重啟服務
/sbin/service crond reload //重新載入配置
/sbin/service crond status //檢視狀態
或者使用
# service crond start
# service crond stop
# service crond restart
# service crond reload
# service crond status
開機啟動
你也可以將這個服務在系統啟動的時候自動啟動:
在/etc/rc.d/rc.local這個指令碼的末尾加上:
/sbin/service crond start
現在Cron這個服務已經在程序裡面了,我們就可以用這個服務了。