crontabs使用

安裝crontab:
[root@CentOS ~]# yum install vixie-cron
[root@CentOS ~]# yum install crontabs linux

說明:
vixie-cron軟件包是cron的主程序;
crontabs軟件包是用來安裝、卸裝、或列舉用來驅動 cron 守護進程的表格的程序。
//+++++++++++++++++++++++++++++++++++
cron 是linux的內置服務,但它不自動起來,能夠用如下的方法啓動、關閉這個服務:
/sbin/service crond start //啓動服務
/sbin/service crond stop //關閉服務
/sbin/service crond restart //重啓服務
/sbin/service crond reload //從新載入配置 web

查看crontab服務狀態:service crond status apache

手動啓動crontab服務:service crond start tomcat

查看crontab服務是否已設置爲開機啓動,執行命令:ntsysv app

加入開機自動啓動:
chkconfig --level 35 crond on webapp


1,crontab命令 編輯器

功能說明:設置計時器。 spa

語  法:crontab [-u <用戶名稱>][配置文件] 或 crontab [-u <用戶名稱>][-elr] .net

補充說明:cron是一個常駐服務,它提供計時器的功能,讓用戶在特定的時間得以執行預設的指令或程序。只要用戶會編輯計時器的配置文件,就能夠使用計時器的功能。其配置文件格式以下:
   Minute Hour Day Month DayOFWeek Command rest

參  數: 
 -e  編輯該用戶的計時器設置。 
 -l  列出該用戶的計時器設置。 
 -r  刪除該用戶的計時器設置。 
 -u<用戶名稱>  指定要設定計時器的用戶名稱。

2,crontab 格式

基本格式 :
*   *  *  *  *  command
分 時 日 月 周  命令

第1列表示分鐘1~59 每分鐘用*或者 */1表示
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標識號星期0~6(0表示星期天)
第6列要運行的命令

crontab文件的一些例子:

30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重啓apache。

45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每個月一、十、22日的4 : 45重啓apache。

10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每週6、週日的1 : 10重啓apache。

0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在天天18 : 00至23 : 00之間每隔30分鐘重啓apache。

0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重啓apache。

* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小時重啓apache

* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11點到早上7點之間,每隔一小時重啓apache

0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每個月的4號與每週一到週三的11點重啓apache

0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一號的4點重啓apache

*/30 * * * * /usr/sbin/ntpdate 210.72.145.44
每半小時同步一下時間

1.查看vixie-cron RPM 軟件包是否已安裝

斷定該軟件包是否已安裝,使用 rpm -q vixie-cron 命令。

[root@localhost ~]# rpm –q vixie-cron


2.斷定服務是否在運行

斷定該服務是否在運行,使用 /sbin/service crond status 命令

[root@localhost ~]# /sbin/service crond status


3.啓動、關閉和重啓、從新載入配置

執行如下命令:

[root@localhost ~]# /sbin/service crond start                          //啓動服務

[root@localhost ~]# /sbin/service crond stop                           //關閉服務

[root@localhost ~]# /sbin/service crond restart               //重啓服務

[root@localhost ~]# /sbin/service crond reload                 //從新載入配置

4.建立保存備份文件的目錄

[root@localhost ~]# mkdir /opt/tomcatbak                

這個是創建在opt目錄下面的,備份文件將會存放在 /opt/tomcatbak文件夾之下。

5.建立/usr/sbin/tomcatbak文件

執行如下命令:

[root@localhost ~]# vi /usr/sbin/tomcatbak

直接添加須要執行的命令,保存退出。

說明:

/opt/tomcat5/webapps                   原文件的存放目錄

/opt/tomcatbak                               備份文件的存放目錄。

cmsadmin                                       原文件的名稱

cmsadmin$(date +%Y%m%d).tar.gz

cmsadmin$(date +Y%m%d)是備份文件的名稱+年月日,.tar.gz是文件類型

後兩條命令同上,只是文件名稱不一樣而已。最後保存退出。

6. 修改tomcatbak文件屬性,使其可執行

執行如下命令:

[root@localhost ~]# chmod +x /usr/sbin/tomcatbak

7. 修改/etc/crontab

執行如下命令或用文件編輯器打開:

[root@localhost ~]# vi /etc/crontab

在下面添加以下內容:

36 17 * * * root /usr/sbin/tomcatbak                                //表示天天的17:36分執行備份

8. 從新啓動crond

執行如下命令:

[root@localhost ~]# /etc/rc.d/init.d/crond restart

完成,這樣就會在天天的17:36自動進行數據備份了。效果以下:

恢復

首先進入到根目錄之下

[root@localhost ~]# cd /

而後選擇要執行的命令:

1、恢復cmsadmin執行:

[root@localhost /]# tar –xzvf /opt/tomcatbak/cmsadmin(+要恢復的文件的日期).tar.gz

2、恢復psc執行:

[root@localhost /]# tar –xzvf /opt/tomcatbak/psc(+要恢復的文件的日期).tar.gz

3、恢復english執行:

[root@localhost /]# tar –xzvf /opt/tomcatbak/english(+要恢復的文件的日期).tar.gz

最後重啓Tomcat,數據恢復完成。

相關文章
相關標籤/搜索