1.背景
一部のJavaプログラムは、我々は、自動起動を開始する必要があります....
2.実装手順
2.1プログラムの起動スクリプトboot.shを書きます
#!/ binに/ bashの #ここでは、他のコードを変更することなく、プログラムの独自の実装に置き換えることができます APP_NAME = DNSProxy.jar プロンプト入力パラメータの#手順 使用法() { エコーは、「使用します。shスクリプト名.SH [ スタート| STOP |再起動|ステータス] 」 出口 1 } #チェックプログラムが実行されています is_exist(){ PID = `psの- efの| grepの$ APP_NAME | grepの- Vのはgrep | awkは' {$ 2印刷します} ' ` #1ノーリターンがない場合、戻り値0があります もし [ -z "$ {PID}" ]。その後、 返す 1つの 他の リターンを 0 されます } #Startメソッド 開始(){ is_exist もし [ $?-eq "0" ]。次に エコー"$ { APP_NAMEは } ている既に。PID実行= $ {PIDを}。" 他に はnohupのJava - jarファイル$ APP_NAME > / devの/ nullに 2 >&1 & エコー"$ { APP_NAME }成功を開始" されます } Stopメソッドの# やめる(){ is_exist もし [ $?-eq "0" ]。その後、 殺す - 9 $は、PID 他 エコー"$ { APP_NAMEが } され ていない実行中の" されます } #出力運転状態 状態(){ is_exist もし [ $?-eq "0" ]。その後、 "$ {エコーAPP_NAMEが } されて実行されている。pidがある$ {PID}は" 他 エコー"$ { APP_NAME } され ませ実行されています。" されます } #再起動します 再起動(){ やめる 開始 } #入力パラメータに応じて、対応する選択された方法を実行する命令を入力しない実行されます ケース「$ 1」で "開始") 開始 ;; "やめる") やめる ;; "状態") 状態 ;; "再起動") 再起動 ;; * ) 使用法 ;; ESAC
書き込みは実行権限として設定する必要があります後
chmod
+x boot.sh
2.2ファイルrc.localにを変更
/etc/rc.d/rc.localのファイルの場所
コマンドを実行し、ファイルの追加、起動スクリプトの最後に、ここにあなた自身の起動スクリプトを書きます
su
- root -c
'/usr/app/boot.sh start'
2.3。変更rc.localにファイルを実行することができます
/etc/rc.d/rc.localのファイルの場所
chmod
+x
/etc/rc
.d
/rc
.
local
3.テスト
リブート:コマンドを実行します。
再起動のLinuxシステム、および再起動後、他のシステムでは、プログラムが起動するかどうかを確認してください
パーフェクト!