linux 開機服務自啓動

linux 開機自啓動

=============

 jenkins用戶(非root用戶)自啓動jenkins服務:

----------------------------------

手動啓動方式如下:

cd /home/jenkins   &&   nohup java -jar jenkins.war &

 

建立自動啓動腳本流程如下:

1.   /etc/init.d 目錄中創建腳本 jenkins
內容爲      
#!/bin/sh
# chkconfig: - 80 20
# description: auto_start_sevcie

case "$1" in
    start)
        /bin/su jenkins -c "cd /home/jenkins && nohup /usr/java/jdk1.7.0_11/java -jar jenkins.war &"
        ;;
    stop)
        ps -ef|grep "jenkins.war" | awk '{print $2}'  | xargs kill -9
        ;;
    restart)
        echo "not support restart"
        ;;
    *)
        echo "Usage: /ect/init.d/auto_start_service { start| stop} "
esac
exit 0


2.   爲腳本添加運行權限
chmod u+x /etc/init.d/
jenkins

3.   /etc/rc2.d目錄中創建軟連接
ln -s /etc/init.d/
jenkins  /etc/rc2.d/S99auto

4.   使用chkconfig設置自啓動
chkconfig --add 
jenkins
chkconfig --level 2345 
jenkins on

5.   測試
service 
jenkins start 

如此,開機即可自動啓動。

 

 

注意點: 

1.   通過/etc/init.d  /etc/rc2.d 中掛載腳本來實現自啓動,如果沒做#3就沒法開機自啓動。

2.   通過 /bin/su  USERNAME -c "commands " 來實現  特定用戶啓動特定腳本 

3.   注意腳本的前三行,如果格式不正確就無法使用chkconfig加載

o    說明是可執行腳本

o    說明是chkconfig的格式,可以加到service中,三個參數分別是 

o     

§  可執行的環境 表示所有環境,或者常用的2345

§  start的優先級

§  stop的優先級

o    說明service的描述

4.   如果腳本沒添加運行權限的話,運行service進行測試時會報錯
auto_start:L unrecognized service

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章