1. 程式人生 > >linux編寫自啟動shell指令碼

linux編寫自啟動shell指令碼

1.需求分析

   在很多情況下,程式設計師都做著重複枯燥的工作,雖然這些工作也是必須的,其實這些重複性的工作可以執行指令碼替代;今天筆者就如何編寫自啟動shell指令碼減少程式設計師開啟伺服器後的環境開啟工作;

2.配置環境

linux版本:centos-6.3

jdk:1.8

tomcat: 9.0

3.實現方案

①抒寫指令碼

 

#!/bin/sh
#chkconfig: 2345 80 90
#description:hello.sh
echo "=============close firewall=================="
service iptables stop
echo "==============start redis server============"
redis-server /usr/local/redis/redis-4.0.1/redis.conf
cd /usr/local/tomcat/apache-tomcat-9.0.0.M22/bin
echo "=================start tomcat================"
./startup.sh

命名為hello.sh

 

前面三行是固定樣式,後續的都是指令碼實現需求

②賦予hello.sh可執行許可權

 

chmod +x ./hello.sh

 

③將hello.sh移動到 /etc/profile.d

 

mv hello.sh /etc/profile.d

 

④新增自啟動項hello.sh(執行新增自啟動前提:該指令碼必須置於/etc/init.d下)

 

chkconfig --add hello.sh

 

⑤預設開啟自啟動項hello.sh

 

chkconfig hello.sh on

 

⑥如果在第④步報錯,則進入hello.sh目錄並編輯

依次執行

 

:set ff

檢視檔案格式,這裡可能會是doc

 

所以還需執行

 

:set ff=unix

 

⑦重啟伺服器,指令碼就自動執行了

4.測試效果

如果重啟服務後以下錯誤

 

 

接下來在tomcat/bin中的catalina.sh中新增以下兩句程式碼(看清楚位置)

export JAVA_HOME=/usr/local/java/jdk1.8.0_60

export JRE_HOME=/usr/local/java/jdk1.8.0_60/jre

具體位置如下

 

然後reboot重啟服務就好

 

訪問tomcat

 

訪問redis