配置Tomcat以指定的身份(非root)運行

    本文依賴的環境:java

CentOS(大部份內容適用於其餘Linux發行版)apache

已安裝並配置好JVM環境tomcat

已安裝並配置好gcc、make等編譯工具bash

    1. 下載Tomcat安裝包並解壓縮工具

cd /opt
wget
http://www.us.apache.org/dist/tomcat/tomcat-6/v6.0.44/bin/apache-tomcat-6.0.44.tar.gz
tar zxvf apache-tomcat-6.0.44.tar.gz
mv apache-tomcat-6.0.44/ tomcat6/

    2. 編譯安裝服務守護程序 spa

cd /opt/tomcat6/bin/
tar vzxf commons-daemon-native.tar.gz
cd /opt/tomcat6/bin/commons-daemon-1.0.15-native-src/unix/
./configure

     若是出現以下錯誤提示,說明未設置JAVA_HOME變量:命令行

*** Java compilation tools ***
checking for JDK location... configure: error: Java Home not defined. Rerun with --with-java=... parameter

    能夠經過命令行參數指定JDK位置unix

./configure --with-java=/opt/jdk

    配置成功後,開始編譯。code

make

    執行make後會生成一個jsvc的文件,將其複製到tomcat的bin目錄blog

cp jsvc /opt/tomcat6/bin

    3. 創建一個用來運行Tomcat的用戶

useradd tomcat -M -d / -s /usr/sbin/nologin

    4. 修改啓動腳本文件

vi /opt/tomcat6/bin/daemon.sh

    找到以下內容

test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat
# Set JAVA_HOME to working JDK or JRE
# JAVA_HOME=/opt/jdk-1.6.0.22

    修改TOMCAT_USER=tomcat爲你指定用來運行tomcat的用戶名,去除JAVA_HOME前的註釋(即「#」號),並設置爲JDK的所在目錄。

    在文件靠前位置的註釋中加入下面的內容

# chkconfig: - 80 20

    5. 修改相關目錄和文件權限

chown -R tomcat:tomcat /opt/tomcat6
 daemon.shchmoda+x /opt/tomcat6/bin/

    如今能夠使用這個腳原本操做tomcat了:

啓動:
/opt/tomcat/bin/daemon.sh  start
中止:
/opt/tomcat/bin/daemon.sh  stop
前臺運行:
/opt/tomcat/bin/daemon.sh  run
查看版本:
/opt/tomcat/bin/daemon.sh  version

    6. 添加tomcat爲CentOS的服務

ln -s /opt/tomcat/bin/daemon.sh /etc/init.d/tomcat6
chkconfig –-add tomcat6

    隨後就能夠用chkconfig命令開啓/關閉服務的運行狀態了。

相關文章
相關標籤/搜索