通過修改Linux服務自動啟動指定應用程式

來源:互聯網
上載者:User

通過修改Linux服務自動啟動指定應用程式 Linux中修改系統服務的命令是chkconfig (check config),命令的詳細解釋如下: chkconfig 功能說明:檢查,設定系統的各種服務。 語  法:chkconfig [--add][--del][--list][系統服務] 或 chkconfig [--level <等級代號>][系統服務][on/off/reset] 補充說明:這是Red Hat公司遵循GPL規則所開發的程式,它可查詢作業系統在每一個執行等級中會執行哪些系統服務,其中包括各類常駐服務。 參  數: --add  增加所指定的系統服務,讓chkconfig指令得以管理它,並同時在系統啟動的敘述檔案內增加相關資料。  --del  刪除所指定的系統服務,不再由chkconfig指令管理,並同時在系統啟動的敘述檔案內刪除相關資料。  --level<等級代號>  指定讀系統服務要在哪一個執行等級中開啟或關畢  首先來執行 chkconfig --list命令來查看所有已添加的系統服務(下面的結果只是一部分) [root@fd init.d]# chkconfig --listdiskdump        0:off   1:off   2:off   3:off   4:off   5:off   6:offxfs             0:off   1:off   2:on    3:on    4:on    5:on    6:offrhnsd           0:off   1:off   2:off   3:on    4:on    5:on    6:offcups-config-daemon      0:off   1:off   2:off   3:on    4:on    5:on    6:offnetfs           0:off   1:off   2:off   3:on    4:on    5:on    6:offnfs             0:off   1:off   2:off   3:off   4:off   5:off   6:offmicrocode_ctl   0:off   1:off   2:on    3:on    4:on    5:on    6:offnetplugd        0:off   1:off   2:off   3:off   4:off   5:off   6:offnetdump         0:off   1:off   2:off   3:off   4:off   5:off   6:offcpuspeed        0:off   1:on    2:on    3:on    4:on    5:on    6:offsyslog          0:off   1:off   2:on    3:on    4:on    5:on    6:offsmb             0:off   1:off   2:off   3:off   4:off   5:off   6:offntpd            0:off   1:off   2:off   3:off   4:off   5:off   6:offrawdevices      0:off   1:off   2:off   3:on    4:on    5:on    6:offpsacct          0:off   1:off   2:off   3:off   4:off   5:off   6:offvncserver       0:off   1:off   2:off   3:off   4:off   5:off   6:offsaslauthd       0:off   1:off   2:off   3:off   4:off   5:off   6:offdc_server       0:off   1:off   2:off   3:off   4:off   5:off   6:offmdmonitor       0:off   1:off   2:on    3:on    4:on    5:on    6:offhttpd           0:off   1:off   2:off   3:off   4:off   5:off   6:offibmasm          0:off   1:off   2:off   3:off   4:off   5:off   6:offdc_client       0:off   1:off   2:off   3:off   4:off   5:off   6:off  其中第一列表示服務名,後面的0-6表示在這六種啟動方式中該服務是啟動(on)還是關閉(off)比如預設情況下,自動檢測新硬體的服務是啟動的(服務名是kudzu),每次啟動需要檢測一段時間,我們可以關閉服務,以後有了硬體改動在調用它。chkconfig kudzu off chkconfig --list kudzukudzu           0:off   1:off   2:off   3:off   4:off   5:off   6:off可以看到檢測新硬體的服務都被關閉了,再次啟動時就不會檢測新硬體了。如果有了硬體改動你可以選擇將此服務開啟(chkconfig kudzu on),其實有更簡單的方法,輸入service kudzu start手動啟動檢測新硬體服務就可以了。這些服務都存放在/etc/init.d目錄下,他們都是可執行檔shell檔案,比如剛才用的檢測新硬體服務[root@fd /]# ls -l /etc/init.d/kudzu-rwxr-xr-x  1 root root 2095 Aug 23  2005 /etc/init.d/kudzu其實我們編寫的shell檔案也可以放在這裡,然後添加成系統服務,但是我們必須遵守一個簡單的預定。我們先來看看kudzu的具體內容吧根據這個模式編寫一個簡單的啟動tomcat的服務指令碼,vi /etc/init.d/tomcat,內容如下 [root@fd /]# cat /etc/init.d/kudzu#!/bin/bash## kudzu         This scripts runs the kudzu hardware probe.## chkconfig: 345 05 95# description:  This runs the hardware probe, and optionally configures \#               changed hardware. # This is an interactive program, we need the current locale具體內容省略 # chkconfig: 2345 20 80# description: simple example to start tomcat export JAVA_HOME=/usr/java/jdk1.5.0_16export CLASS_PATH=/usr/java/jdk1.5.0_16/libexport PATH=$JAVA_HOME/bin:$PATH/usr/Tomcat/bin/startup.sh 將tomcat添加到服務中chkconfig --add tomcat狀態設為啟動chkconfig tomcat on         在tomcat檔案的頭幾行的備註陳述式中,必須包含chkconfig和description兩部分內容,否則在執行“chkconfig --add tomcat”時,會出現“tomcat服務不支援chkconfig”的錯誤提示。chkconfig這行表示預設啟動的運行層級以及啟動和停止的優先順序,如該服務預設不再任何運行級啟動,則以 - 代替運行層級。在tomcat中表示指令碼在運行級2、3、4、5啟動,啟動優先權為20(優先權數越大服務啟動的越晚),停止優先權為80。如果服務已經設定好了,那麼通過編輯tomcat檔案來修改啟動優先權就不管用了,先刪除服務再添加進來就可以了。        我模仿檢測新硬體服務的內容編寫一個較為複雜的tomcat服務,在系統啟動時啟動tomcat,在系統關閉時關閉tomcat。內容如下 # chkconfig: 2345 30 70 # description: Starts and Stops Tomcat. export JAVA_HOME=/usr/java/jdk1.5.0_16export CLASS_PATH=/usr/java/jdk1.5.0_16/libexport PATH=$JAVA_HOME/bin:$PATH case "$1" in start) /usr/Tomcat/bin/startup.sh touch /var/lock/subsys/tomcat ;; status)        if [ -f /var/lock/subsys/tomcat ]; then          echo $"tomcat is running"          exit 0        fi        echo $"tomcat has stopped"        exit 3        ;; stop) /usr/Tomcat/bin/shutdown.sh rm -f /var/lock/subsys/tomcat ;; restart) /usr/Tomcat/bin/shutdown.sh/usr/Tomcat/bin/startup.sh;;*) echo "Usage: tomcat {start|stop|restart|status}" exit 1 esac exit 0   

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.