linux定時(shí)啟動(dòng)服務(wù)詳解
linux中通過(guò)定時(shí)任務(wù),定時(shí)執(zhí)行shell腳本啟動(dòng)jar服務(wù)
1. linux定時(shí)器選擇
linux常見(jiàn)有兩種定時(shí)器 : 一種是crontab ,一種是at 命令, 因?yàn)槲矣玫氖莄rontab, 所以我重點(diǎn)講crontab的用法。
crontab
檢查是否你的操作系統(tǒng)已經(jīng)安裝了crontab
rpm -qa | grep crontab

圖片上這樣就說(shuō)明已經(jīng)安裝好了 PS:因?yàn)槲乙呀?jīng)下載過(guò)了
如果沒(méi)有安裝
分別執(zhí)行
yum -y install vixie-cron yum -y install crontabs
- vixie-cron 是 cron 的主程序;
- crontabs 是用來(lái)安裝、卸裝、或列舉用來(lái)驅(qū)動(dòng) cron 守護(hù)進(jìn)程的表格的程序
安裝好了–啟動(dòng)和配置服務(wù)
手動(dòng)方式
service crond start //啟動(dòng)服務(wù) service crond stop //關(guān)閉服務(wù) service crond restart //重啟服務(wù) service crond reload //重新載入配置 service crond status //查看crontab服務(wù)狀態(tài)
這里service不能使用時(shí),使用: systemctl

● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2019-02-15 02:13:57 EST; 1 weeks 0 days ago
Main PID: 94183 (crond)
Tasks: 1
Memory: 344.0K
CGroup: /system.slice/crond.service
└─94183 /usr/sbin/crond -n
圖片這樣說(shuō)明已經(jīng)在運(yùn)行了 同樣可以設(shè)置開機(jī)自啟動(dòng):
chkconfig --level 345 crond on

這樣就已經(jīng)設(shè)置好了OK了
crontab文件格式:

特殊字符:
- 星號(hào)(*):代表’‘每’'的意思,例如month字段如果是星號(hào),則表示每月都執(zhí)行該命令。
- 逗號(hào)(,):表示分隔時(shí)段的意思,例如,“1,3,5,7,9”。
- 中杠(-):表示一個(gè)時(shí)間范圍,例如“2-6”表示“2,3,4,5,6”。
- 正斜線(/):可以用正斜線指定時(shí)間的間隔頻率,例如“0-23/2”表示每?jī)尚r(shí)執(zhí)行一次。同時(shí)正斜線可以和星號(hào)一起使用,例如*/10,如果用在minute字段,表示每十分鐘執(zhí)行一次
基本場(chǎng)景使用命令:
- 看本地定時(shí)任務(wù):crontab -l
- 添加或修改定時(shí)任務(wù):vi /etc/crontab
- 實(shí)時(shí)查看crontab執(zhí)行內(nèi)容:tail -f /var/log/cron
- 修改后重啟: systemctl restart crond.service
本機(jī)測(cè)試如下
在對(duì)應(yīng)路徑下添加runjar.sh腳本和對(duì)應(yīng)腳本日志auto.log文件,腳本如下:
#! /bin/bash
RESOURCE_NAME=/home/package/modules.jar
RESOURCE_LOG=/home/package/modules.log
cur_dateTime=$(date "+%Y-%m-%d %H:%M:%S")
tpid=`ps -ef | grep $RESOURCE_NAME|grep -v grep|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'kill Process!'
kill -9 $tpid
else
echo 'WhaleSwallow is not running.'
fi
sleep 1
echo 'running start----------------'
echo 'RESTART_DATE:' $cur_dateTime
rm -f tpid
source /etc/profile
nohup java -Xmx1024m -Xms512m -Dfile.encoding=utf-8 -jar $RESOURCE_NAME > $RESOURCE_LOG 2>&1 &
sleep 2
tail -200f RESOURCE_LOG
echo '=======================END======================'
添加定時(shí)任務(wù):vi /etc/crontab,
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed */2 * * * * /home/package/runjar.sh >> /home/package/auto.log
這里是兩分鐘執(zhí)行一次。
重啟定時(shí)任務(wù)服務(wù):
systemctl restart crond.service
查看實(shí)時(shí)日志:
tail -f /var/log/cron


這里就OK了!
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
sersync2完全安裝配置說(shuō)明(一) 基本功能使用
當(dāng)前版本的sersync依賴于rsync進(jìn)行同步。如下圖所示,在同步主服務(wù)器上開啟sersync,將監(jiān)控路徑中的文件同步到目標(biāo)服務(wù)器,因此需要在主服務(wù)器配置sersync,在同步目標(biāo)服務(wù)器配置rsync2011-11-11
centos系統(tǒng)修改創(chuàng)建文件夾目錄的顯示顏色
大家應(yīng)該都知道在Linux系統(tǒng)中l(wèi)s文件夾的痛苦我就不說(shuō)了,為了不傷眼睛,一般ssh終端背景都用的黑色,文件夾又是深藍(lán)色,每次看文件夾都要探頭仔細(xì)去看。這篇文章給大家介紹如何修改改創(chuàng)建文件夾目錄的顯示顏色,有需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。2016-11-11
Apache多虛擬主機(jī)多站點(diǎn)配置的兩種實(shí)現(xiàn)方案
本文介紹了在Apache服務(wù)器上配置多虛擬主機(jī)的兩種方案:基于IP地址的虛擬主機(jī)配置和基于域名的虛擬主機(jī)配置,詳細(xì)說(shuō)明了每個(gè)方案的配置步驟,以實(shí)現(xiàn)在同一臺(tái)服務(wù)器上托管多個(gè)網(wǎng)站的目的,感興趣的可以了解一下2024-09-09
在Linux下用 mkdir 命令來(lái)創(chuàng)建目錄和子目錄的用法
這篇文章主要介紹了在Linux下用 mkdir 命令來(lái)創(chuàng)建目錄和子目錄的用法,具體一定的參考價(jià)值,有需要的可以了解一下。2016-10-10
Linux系統(tǒng)中找不到IP地址的解決過(guò)程
文章介紹在Linux系統(tǒng)中若ifconfig未顯示ens33接口,可通過(guò)ip addr命令檢查狀態(tài),若接口處于DOWN狀態(tài),需先啟用,再檢查IPv4/IPv6配置,若需靜態(tài)IP,應(yīng)修改/etc/sysconfig/network-scripts/ifcfg-ens33文件,設(shè)置BOOTPROTO=static并重啟網(wǎng)絡(luò)服務(wù)2025-09-09
Linux環(huán)境下快速搭建ftp服務(wù)器方法介紹
這篇文章主要介紹了Linux環(huán)境下快速搭建ftp服務(wù)器方法介紹,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01

