歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

CentOS下使用yum命令安裝計劃任務程序crontab

概述

利用“任務計劃”,可以將任何腳本、程序或文檔安排在某個最方便的時間運行。通俗的講就是定時執行某個腳本、程序。

常見用途

定時關機
定時檢查更新
定時對系統配置、數據庫、日志進行備份
定時清理垃圾文件

檢測是否已安裝

# crontab
-bash: crontab: command not found

執行 crontab 命令如果報 command not found,就表明沒有安裝.

開始安裝

# yum -y install vixie-cron
Loaded plugins: fastestmirror, refresh-packagekit, security
Existing lock /var/run/yum.pid: another copy is running as pid 25960.
Another app is currently holding the yum lock; waiting for it to exit...

可能是系統自動升級正在運行,yum在鎖定狀態中。
可以通過強制關掉yum進程:
#rm -f /var/run/yum.pid
然後就可以使用yum了。

# yum -y install vixie-cron
Loaded plugins: fastestmirror, refresh-packagekit, security
Determining fastest mirrors
 * base: mirrors.btte.net
 * extras: mirrors.sina.cn
 * updates: mirrors.sina.cn
base                                                                                                                                                                    | 3.7 kB     00:00     
extras                                                                                                                                                                  | 3.4 kB     00:00     
extras/primary_db                                                                                                                                                       |  32 kB     00:00     
updates                                                                                                                                                                 | 3.4 kB     00:00     
updates/primary_db                                                                                                                                                      | 1.9 MB     00:07     
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package cronie.x86_64 0:1.4.4-15.el6 will be installed
--> Processing Dependency: dailyjobs for package: cronie-1.4.4-15.el6.x86_64
--> Processing Dependency: /usr/sbin/sendmail for package: cronie-1.4.4-15.el6.x86_64
--> Running transaction check
---> Package cronie-anacron.x86_64 0:1.4.4-15.el6 will be installed
--> Processing Dependency: crontabs for package: cronie-anacron-1.4.4-15.el6.x86_64
---> Package sendmail.x86_64 0:8.14.4-9.el6 will be installed
--> Processing Dependency: procmail for package: sendmail-8.14.4-9.el6.x86_64
--> Running transaction check
---> Package crontabs.noarch 0:1.10-33.el6 will be installed
---> Package procmail.x86_64 0:3.22-25.1.el6_5.1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===============================================================================================================================================================================================
 Package                                          Arch                                     Version                                                Repository                              Size
===============================================================================================================================================================================================
Installing:
 cronie                                           x86_64                                   1.4.4-15.el6                                           base                                    74 k
Installing for dependencies:
 cronie-anacron                                   x86_64                                   1.4.4-15.el6                                           base                                    31 k
 crontabs                                         noarch                                   1.10-33.el6                                            base                                    10 k
 procmail                                         x86_64                                   3.22-25.1.el6_5.1                                      base                                   162 k
 sendmail                                         x86_64                                   8.14.4-9.el6                                           base                                   716 k

Transaction Summary
===============================================================================================================================================================================================
Install       5 Package(s)

Total download size: 994 k
Installed size: 2.1 M
Downloading Packages:
(1/5): cronie-1.4.4-15.el6.x86_64.rpm                                                                                                                                   |  74 kB     00:00     
(2/5): cronie-anacron-1.4.4-15.el6.x86_64.rpm                                                                                                                           |  31 kB     00:00     
(3/5): crontabs-1.10-33.el6.noarch.rpm                                                                                                                                  |  10 kB     00:00     
(4/5): procmail-3.22-25.1.el6_5.1.x86_64.rpm                                                                                                                            | 162 kB     00:00     
(5/5): sendmail-8.14.4-9.el6.x86_64.rpm                                                                                                                                 | 716 kB     00:00     
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                          1.3 MB/s | 994 kB     00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : procmail-3.22-25.1.el6_5.1.x86_64                                                                                                                                           1/5 
  Installing : sendmail-8.14.4-9.el6.x86_64                                                                                                                                                2/5 
  Installing : cronie-1.4.4-15.el6.x86_64                                                                                                                                                  3/5 
  Installing : crontabs-1.10-33.el6.noarch                                                                                                                                                 4/5 
  Installing : cronie-anacron-1.4.4-15.el6.x86_64                                                                                                                                          5/5 
ERROR:dbus.proxies:Introspect error on :1.2513:/org/freedesktop/PackageKit: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Unable to send message to PackageKit
  Verifying  : crontabs-1.10-33.el6.noarch                                                                                                                                                 1/5 
  Verifying  : cronie-anacron-1.4.4-15.el6.x86_64                                                                                                                                          2/5 
  Verifying  : sendmail-8.14.4-9.el6.x86_64                                                                                                                                                3/5 
  Verifying  : cronie-1.4.4-15.el6.x86_64                                                                                                                                                  4/5 
  Verifying  : procmail-3.22-25.1.el6_5.1.x86_64                                                                                                                                           5/5 

Installed:
  cronie.x86_64 0:1.4.4-15.el6                                                                                                                                                                 

Dependency Installed:
  cronie-anacron.x86_64 0:1.4.4-15.el6               crontabs.noarch 0:1.10-33.el6               procmail.x86_64 0:3.22-25.1.el6_5.1               sendmail.x86_64 0:8.14.4-9.el6              

Complete!

查看命令幫助

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這個服務已經在進程裡面了,我們就可以用這個服務了。

Copyright © Linux教程網 All Rights Reserved