Linux 設置開機自啟動腳本(ES、MySQL、Nacos、Nginx)
- cd /etc/rc.d/init.d;新建startupOperation.sh文件。
- chmod +x startupOperation.sh,賦予可執行權限,此時文件會變色。
- chkconfig --add startupOperation.sh
- chkconfig startupOperation.sh on
- sudo reboot 重啟后,確認是否成功
若啟動失敗,則去/var/log/boot.log查找啟動日志,查看失敗原因;也可systemctl status {腳本文件名字}.service查看,我這里是systemctl status startupOperation.service
#!/bin/sh #chkconfig: 2345 80 90 #description:auto_run echo "啟動es" ES_PID=`ps -ef | grep elasticsearch | grep -v grep | awk '{print $2}'` if [ ! -z "$ES_PID" ] ; then echo "es is runing...pid:$ES_PID" else echo "start es" cd '/data/tools/elasticsearch-7.3.0/bin' ph=`pwd` echo "$ph" su - elasticsearch -c 'sh /data/tools/elasticsearch-7.3.0/bin/elasticsearch -d;exit' fi echo "啟動nacos" NACOS_PID=`ps -ef | grep nacos | grep -v grep | awk '{print $2}'` if [ ! -z "$NACOS_PID" ] ; then echo "nacos is runing...pid:$NACOS_PID" else echo "start nacos" cd /data/nacos/bin nohup sh startup.sh -m standalone & fi echo "啟動redis" REDIS_PID=`ps -ef | grep redis | grep -v grep | awk '{print $2}'` if [ ! -z "$REDIS_PID" ] ; then echo "redis is runing...pid:$REDIS_PID" else echo "start REDIS" cd /data/tools/redis-4.0.2/src redis-server ../redis.conf fi echo "啟動nginx" NGINX_PID=`ps -ef | grep nginx | grep -v grep | awk '{print $2}'` if [ ! -z "$NGINX_PID" ] ; then echo "nginx is runing...pid:$NGINX_PID" else echo "NGINX REDIS" /usr/local/nginx/sbin/nginx fi echo "啟動MySQL" MYSQL_IS_START=`netstat -lntup |grep 3306|wc -l` if [ $MYSQL_IS_START -eq 1 ] ; then echo "mysql is runing..." else echo "start mysql" service mysqld start fi
注:上面的三行是中,第二,第三行是必須的,否則在運行chkconfig --add時,會報錯!!!

浙公網安備 33010602011771號