我需要在Centos(5.9)啓動時啓動Java應用程序。在CentOS上啓動時啓動Java應用程序
我試圖啓動一個簡單的腳本(名爲 「lanzar.sh」)在CentOS在啓動時:
#!/bin/sh
cd /home/someuser/Desktop/Dist
java -jar SomeApp.jar
我追加行「/ bin/sh的/家庭/ SomeUser的/桌面/距離/ lanzar.sh「到/etc/rc.d/rc.local。但是Java應用程序無法啓動。我有:
- 授予755個權限到/etc/rc.d/rc.local文件中
- 寫 「lanzar.sh」 到/etc/rc.d/rc.local文件的內容。用分號隔開,並用不同的行。
- 更改位置的「lanzar.sh」。
- 其他事情,取自其他線程,不適合我。
我rc.loca樣子:
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
#
#Some comment
#Some comment
#Some comment
touch /var/lock/subsys/local
/bin/sh /home/fernando/Desktop/Dist/lanzar.sh
注:我知道類似的問題已經被問過,但在測試很多,我用沒有成功谷歌上搜索發現問題的答案後,我有自己問這個。
那個java應用程序做什麼?它是否需要訪問某些用戶數據?它需要X服務器嗎?它是否依賴於要設置的特定環境變量?當您嘗試此操作時,應用程序是否記錄任何錯誤消息?如果在該腳本中添加一些回顯行(對日誌文件),日誌文件是否會寫入? –
通過你的消化,我在其他命令之前添加了一行-echo「Some log」>/var/log/mylog-。日誌沒有生成。所以我認爲問題是rc.local根本沒有被執行。我必須說,在問題開始發生之前,我替換了原始文件,但後來運行了-chmod 755 /etc/rc.d/rc.local- – Ferite
將log命令放入rc.local中,看看會發生什麼。請記住,rc.local並未作爲用戶運行,因此可能有權或無權訪問用戶主目錄/ etc中的文件。 –