JSVC启动Tomcat
2015-07-27 15:54
274 查看
What is JSVC?
Jsvc is a set of libraries and applications for making Java applications run on UNIX more easily. Jsvc allows the application (e.g. Tomcat) to perform some privileged operations as root (e.g. bindto a port < 1024), and then switch identity to a non-privileged user.使用jsvc管理Tomcat的运行,相比使用其他方式最大的优势是可以使Tomcat以root身份做一些非root身份做不了的事,例如绑定端口到小与1024的端口,例如80。
通常为了安全考虑,linux服务器上运行Tomcat程序的进程其身份均不为root,这为Tomcat的正常使用带来了一些限制,使用jsvc恰好可以弥补这些限制带来的不足。
Using jsvc
在$CATALINA_HOME/bin中有commons-daemon-native.tar.gz,进入bin目录并解压[root@sw ~]# ar zxvf commons-daemon-native.tar.gz
[root@sw ~]# cd commons-daemon-1.0.2-native-src/unix
[root@sw ~]# ./configure && make
编译完成后出现jsvc文件,复制jsvc到$CATALINA_HOME/bin目录下面
[root@sw ~]# cp jsvc ../../
为了方便受用,在/etc/init.d/目录下编写tomcat启动服务配置文件
[root@sw ~]#cd /etc/init.d/
[root@sw ~]#vi tomcat
下面贴出示例,复制并做本地化修改后即可使用
在$CATALINA_HOME/bin中有commons-daemon-native.tar.gz,进入bin目录并解压 [root@sw ~]# ar zxvf commons-daemon-native.tar.gz [root@sw ~]# cd commons-daemon-1.0.2-native-src/unix [root@sw ~]# ./configure && make 编译完成后出现jsvc文件,复制jsvc到$CATALINA_HOME/bin目录下面 [root@sw ~]# cp jsvc ../../ 为了方便受用,在/etc/init.d/目录下编写tomcat启动服务配置文件。 [root@sw ~]#cd /etc/init.d/ [root@sw ~]#vi tomcat #!/bin/sh # Small shell script to show how to start/stop Tomcat using jsvc #########根据自己的实际jdk位置来修改############# JAVA_HOME=/usr/local/jdk1.7.0_51 ################Tomcat安装程序配置############## CATALINA_HOME=/usr/local/apache-tomcat-7.0.62 DAEMON_HOME=$CATALINA_HOME/bin ################指定运行实力账户################ TOMCAT_USER=sandwish ######################实例配置####################################### CATALINA_BASE=/usr/local/apache-tomcat-7.0.62-ins/instance TMP_DIR=$CATALINA_BASE/temp PID_FILE=$CATALINA_BASE/jsvc.pid CATALINA_OPTS= JAVA_OPTS='-Xms128m -Xmx512m -XX:MaxNewSize=128m -XX:MaxPermSize=256m' ######################实例配置######################################## ##################加载类库############## . /etc/rc.d/init.d/functions CLASSPATH=\ $JAVA_HOME/lib/tools.jar:\ $CATALINA_HOME/bin/commons-daemon.jar:\ $CATALINA_HOME/bin/bootstrap.jar:\ $CATALINA_HOME/bin/tomcat-juli.jar ##################加载类库############## start() { $DAEMON_HOME/catalina.sh version |grep version # If you want to specify a user to run Tomcat. #increase the 'user $ TOMCAT_USER \' to the parameter list. $DAEMON_HOME/jsvc \ -home $JAVA_HOME \ -user $TOMCAT_USER \ -Dcatalina.home=$CATALINA_HOME \ -Dcatalina.base=$CATALINA_BASE \ -Djava.io.tmpdir=$TMP_DIR \ -wait 10 \ -pidfile $PID_FILE \ -outfile $CATALINA_BASE/logs/catalina.out \ -errfile '&1' \ $CATALINA_OPTS \ $JAVA_OPTS \ -cp $CLASSPATH \ org.apache.catalina.startup.Bootstrap echo "start*****************************[ok]" } stop() { $DAEMON_HOME/catalina.sh version |grep version # $DAEMON_HOME/jsvc \ -stop \ -pidfile $PID_FILE \ org.apache.catalina.startup.Bootstrap echo "stop*****************************[ok]" } status() { ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap" | awk '{printf $1 " "}' | wc | awk '{print $2}' >tomcat_process_count.txt read line < tomcat_process_count.txt if [ $line -gt 0 ]; then $DAEMON_HOME/catalina.sh version |grep version echo -n " ( pid " ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap" | awk '{printf $1 " "}' echo ") is running " else $DAEMON_HOME/catalina.sh version |grep version echo " is stopped" fi } case "$1" in start) # Start Tomcat start exit $? ;; stop) # Stop Tomcat stop exit $? ;; restart) # Restart Tomcat stop sleep 3 start exit $? ;; status) status exit $? ;; *) echo "Usage: Tomcat7 {start|stop|restart|status}" exit 1;; esac ##### ####
相关文章推荐
- tomcat结合nginx使用小结
- 关于tomcat端口的修改,以及同时部署多个应用,自己遇到的问题以及解决办法
- CXF实战之在Tomcat中发布Web Service(二)
- Intellij IDEA远程调试tomcat
- MyEclipse搭建tomcat服务器过程详解
- Tomcat启动过程
- 视频播放提示:video not found or access denied
- Tomcat 简介
- Linux下Tomcat VM参数修改
- linux下安装tomcat并设置开机自启动
- Eclipse下tomcat输出路径配置
- tomcat部署之字符编码问题
- 【Tomcat】Tomcat报错追踪
- ubuntu下如何整合apache2与tomcat
- Myeclipse配置Tomcat
- Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modules
- nginx结合tomcat使用
- tomcat 启动一闪而过
- Ubuntu12.04以及centos jdk7 32位安装 和设置tomcat监听内网地址
- Tomcat 6 日志输出配置