centos腳本啟動
Ⅰ CentOS 通用腳本處理jar包程序
不同應用只需要修改AppName參數內容即可實現jar包的啟動,停止,重啟
啟動:./newapp.sh start
停止:./newapp.sh stop
重啟:./newapp.sh restart
shell腳本newapp.sh管理jar包內容如下(不同應用只需要修改AppName參數內容和APP_HOME參數路徑,以及相應的日誌文件的路徑):
#!/bin/sh
# ./ry.sh start 啟動 stop 停止 restart 重啟 status 狀態
AppName=ruoyi-admin.jar
# JVM參數
JVM_OPTS="-Dname=$AppName -Duser.timezone=Asia/Shanghai -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:NewRatio=1 -XX:SurvivorRatio=30 -XX:+UseParallelGC -XX:+UseParallelOldGC"
APP_HOME=`pwd`
LOG_PATH=$APP_HOME/logs/$AppName.log
if [ "$1" = "" ];
then
echo -e "33[0;31m 未輸入操作名 33[0m 33[0;34m {start|stop|restart|status} 33[0m"
exit 1
fi
if [ "$AppName" = "" ];
then
echo -e "33[0;31m 未輸入應用名 33[0m"
exit 1
fi
function start
{
PID=`ps -ef |grep java|grep $AppName|grep -v grep|awk '{print $2}'`
if [ x"$PID" != x"" ]; then
echo "$AppName is running..."
else
nohup java $JVM_OPTS -jar $AppName > /data/ruoyi/nohup 2>&1 &
echo "Start $AppName success..."
fi
}
function stop
{
echo "Stop $AppName"
PID=""
query{
PID=`ps -ef |grep java|grep $AppName|grep -v grep|awk '{print $2}'`
}
query
if [ x"$PID" != x"" ]; then
kill -TERM $PID
echo "$AppName (pid:$PID) exiting..."
while [ x"$PID" != x"" ]
do
sleep 1
query
else
echo "$AppName already stopped."
fi
}
function restart
{
stop
sleep 2
start
}
function status
{
PID=`ps -ef |grep java|grep $AppName|grep -v grep|wc -l`
if [ $PID != 0 ];then
echo "$AppName is running..."
else
echo "$AppName is not running..."
fi
}
case $1 in
start)
start;;
stop)
stop;;
restart)
restart;;
status)
status;;
*)
esac
Ⅱ CENTOS7開機自啟動腳本
1、因為在centos7中 /etc/rc.d/rc.local 的許可權被降低了,所以需要賦予其可執行權
2、賦予腳本可執行許可權
假設 /usr/local/script/autostart.sh 是你的腳本路徑,給予執行許可權
3、打開 /etc/rc.d/rc.local 文件,在末尾增加如下內容
1、將腳本移動到 /etc/rc.d/init.d 目錄下
2、增加腳本的可執行許可權
3、添加腳本到開機自動啟動項目中
chkconfig啟動腳本規范 在腳本開頭加入下面內容:
說明:chkonfig後面是啟動級別和優先順序,description後面是服務描述。如上面腳本意思是,
服務必須在運行級2,3,4,5下被啟動或關閉,啟動的優先順序是90,停止的優先順序是10。
優先順序范圍是0-100,數字越大,優先順序越低。
Linux啟動優先順序
運行級別就是操作系統當前正在運行的功能級別。這個級別從0到6 ,具有不同的功能。
這些級別在/etc/inittab文件里指定。這個文件是init程序尋找的主要文件,最先運行的服務是那些放在/etc/rc.d 目錄下的文件。
不同的運行級定義如下:(可以參考Linux裡面的/etc/inittab)
Ⅲ CentOS7 設置開機自啟動腳本
兩種實現方式:
方法一: (rc.local)
1、因為在 centos7 中 /etc/rc.d/rc.local 的許可權被降低了,所以需要賦予其可執行權
2、賦予腳本可執行許可權
假設 /usr/local/sca/start.sh 是你的腳本路徑,給予執行許可權
3、打開 /etc/rc.d/rc.local 文件,在末尾增加如下內容
方法二: (chkconfig)
1、將腳本移動到 /etc/rc.d/init.d 目錄下
2、增加腳本的可執行許可權
3、添加腳本到開機自動啟動項目中
chkconfig 啟動腳本規范 在腳本開頭加入下面內容:
注意:不添加以上內容的話添加啟動項時會提示service myservice does not support chkconfig
Linux啟動優先順序:
Ⅳ 求教關於Centos 7開機自動啟動腳本 問題
1. 自己新建一個腳本,如centnet-service.sh
經過後面的幾個步驟後,這個腳本在開機的時候會執行,在這個腳本裡面可以寫你開機的時候想執行的命令,如啟動tomcat,oracle等服務
2. 在腳本中輸入啟動服務的命令,如(開機啟動tomcat):
#!/bin/bashexport JDK_HOME=/home/java/jdk1.8.0_91export JAVA_HOME=/home/java/jdk1.8.0_91/home/tomcat/apache-tomcat-8.0.36/bin/startup.sh
3. 執行如下命令,將該腳本標記為可執行文件(添加可執行的許可權)
chmod +x /home/centnet/centnet-service.sh
4. 執行如下命令將/etc/rc.d/rc.local文標記為可執行文件
在centos7中,/etc/rc.d/rc.local文件的許可權被降低了,開機的時候執行在自己的腳本是不能起動一些服務的,執行下面的命令可以文件標記為可執行的文件
chmod +x /etc/rc.d/rc.local
5. 打開/etc/rc.d/rc.local文件,在最後面添加如下腳本
/home/centnet/centnet-service.sh
這樣,centnet-service.sh這個腳本在開機的時候就會被執行了,以後再這裡面寫啟動服務的命令就可以了
Ⅳ Centos7 自己寫了一個java程序的jar包,需要寫一個腳本,然後設置成開機自啟動,應該怎麼做
首先: centos 7默認 /etc/rc.local是沒有執行許可權的,所以:
第一步: chmod+x /etc/rc.local
第二步:把你要開機啟動的腳本加到這個文件最後。保存就可以了
沒錯,就這么簡單,哈哈,好運