linux上應用隨機啓動

這是個go項目,其餘的能夠參考。linux

首先要有個腳本好比demoshell

#!/bin/bash
#
# etcd This shell script takes care of starting and stopping Etcd
#
# chkconfig: 2345 80 20
#
### BEGIN INIT INFO
# Provides: etcd
# Required-Start: $network $syslog
# Required-Stop: $network $syslog
# Default-Start:
# Default-Stop:
# Short-Description: start and stop etcd
### END INIT INFO
 
## Source function library.
#. /etc/rc.d/init.d/functions
export JAVA_HOME=/usr
export PATH=$JAVA_HOME/bin:$PATH
GOPATH=/opt/etcdrepo/etcd
ETCD_HOME=$GOPATH

etcd_pid() {
    echo `ps aux | grep "etcd\>" | grep -v grep | awk '{ print $2 }' | tail -n 1`
   }
 
start(){
    pid=$(etcd_pid)
    if [ -n "$pid" ]
    then
         echo "Etcd is already running (pid: $pid)"
    else
         #Start etcd
         echo "Starting etcd"
         ulimit -n 100000
         umask 007
         sudo $ETCD_HOME/bin/etcd -data-dir machines/machine1 -name machine1 & > log.txt
    fi
    return 0
}
 
stop(){
    pid=$(etcd_pid)
    if [ -n "$pid" ]
    then
        echo -n -e "\nkilling processes which didn't stop after $SHUTDOWN_WAIT seconds"
        kill -9 $pid
    else
        echo "Etcd is not running"
    fi
    return 0
}
 
case $1 in
start)
    start
    ;;
stop)
    stop
    ;;
restart)
    stop
    start
    ;;
status)
    pid=$(etcd_pid)
    if [ -n "$pid" ]
    then
        echo "Etcd is running with pid: $pid"
    else
        echo "Etcd is not running"
    fi
    ;;
esac
exit 0

2. 將這個腳本放入 /etc/init.d下或者 /etc/rc.d/init.d下bash

3. 設置權限ide

   

sudo chmod 777 demo
sudo chkconfig --add demo
sudo chkconfig --list demo
sudo service demo start  找不到服務的時候  能夠用 sudo /sbin/service demo start 

 4. reboot linux試下吧!ui

相關文章
相關標籤/搜索