脚本启动tomcat
⑴ linux环境下如何通过shell脚本监测tomcat是否关闭并自动启动
pgrep tomcat
或
pidof tomcat
⑵ 一个tomcat启动脚本,手工执行ok,但是放入定时任务就是不执行,请问为什么
写一个重启tomcat的shell脚本,然后用crontab定时执行这个脚本即可。
⑶ 如何配置Tomcat服务器环境
一、安装JDK和Tomcat
1,安装JDK:直接运行jdk-7-windows-i586.exe可执行程序,默认安装即可。
备注:路径可以其他盘符,不建议路径包含中文名及特殊符号。
2、安装Tomcat:直接解压缩下载文件“apache-tomcat-7.0.33-windows-x86.zip”到C盘下。安装路径建议修改为:c: omcat。
备注:如下载的是可执行文件,双击运行,默认安装即可。
二、配置JDK环境变量(在步骤查看如何配置环境变量)
1,新建变量名:java_HOME,变量值:C:Program FilesJavajdk1.7.0
2,打开PATH,添加变量值:%JAVA_HOME%in;%JAVA_HOME%jrein
3,新建变量名:CLASSPATH,变量值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar
备注:
1,.表示当前路径,%JAVA_HOME%就是引用前面指定的JAVA_HOME;
2,JAVA_HOME指明JDK安装路径,此路径下包括lib,bin,jre等文件夹,tomcat,eclipse等的运行都需要依靠此变量。
3,PATH使得系统可以在任何路径下识别java命令。
4,CLASSPATH为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别。
三、测试JDK
在CMD命令下输入javac,java,javadoc命令:出现图示界面,表示安装成功。
1,JAVA_HOME中的路径不能用分号结尾,如C:Program FilesJavajdk1.7.0。
2,CATALINA_BASE,CATALINA_HOME,TOMCAT_HOME中的路径不能以“”结尾。
3,JAVA_HOME的路径一定不要写成了JRE的路径。
4,在环境变量中修改添加变量时,一定要注意分号、空格,是否有多余的字母。作者就是因为path路径中多了一个字母,怎么都配置不成功。如果配置不成功,一定要反复检查。
以上错误,非常容易出现错误:CATALINA_HOME或是JAVA_HOME没有配置好。如错误提示“The CATALINA_HOME environment variable is not defined correctly”
一、静态部署
1、直接将web项目文件件拷贝到webapps 目录中
Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。所以可以将JSP程序打包成一个war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。一个war包就是有特性格式的jar包,它是将一个web程序的所有内容进行压缩得到。具体如何打包,可以使用许多开发工具的IDE环境,如Eclipse等。也可以用cmd命令:jar -cvf mywar.war myweb
webapps这个默认的应用目录也是可以改变。打开Tomcat的conf目录下的server.xml文件,找到下面内容:<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
将appBase修改即可。
2、在server.xml中指定
在Tomcat的配置文件中,一个Web应用就是一个特定的Context,可以通过在server.xml中新建Context里部署一个JSP应用程序。打开server.xml文件,在Host标签内建一个Context,内容如下。在tomcat中的conf目录中,在server.xml中的,<host/>节点中添加:
<Contextpath="/hello"docBase="D: workspacehelloWebRoot"debug="0"privileged="true">
< /Context>或者
<Contextpath="/myapp"reloadable="true"docBase="D:myapp"workDir="D:myappwork"/>
或者
<Contextpath="/sms4"docBase="D:workspacesms4WebRoot"/>
说明:path是虚拟路径;
docBase是应用程序的物理路径;
workDir是这个应用的工作目录,存放运行时生成的与这个应用相关的文件;
debug则是设定debug level, 0表示提供最少的信息,9表示提供最多的信息
privileged设置为true的时候,才允许Tomcat的Web应用使用容器内的Servlet
reloadable如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序,实现热部署
antiResourceLocking和antiJARLocking 热部署是需要配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把相应的源文件和jar文件复制到一个临时目录里。
3、创建一个Context文件
在conf目录中,新建Catalina\localhost目录,在该目录中新建一个xml文件,名字不可以随意取,要和path后的那个名字一致,按照下边这个path的配置,xml的名字应该就应该是hello(hello.xml),该xml文件的内容为:<Context path="/hello" docBase="E:workspacehelloWebRoot" debug="0" privileged="true"></Context>
tomcat自带例子如下:
<Context docBase="${catalina.home}/server/webapps/host-manager"
privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>
这个例子是tomcat自带的,编辑的内容实际上和第二种方式是一样的,其中这xml文件名字就是访问路径,这样可以隐藏应用的真实名字。
4、注意:
删除一个Web应用同时也要删除webapps下相应的文件夹和server.xml中相应的Context,还要将Tomcat的confcatalinalocalhost目录下相应的xml文件删除,否则Tomcat仍会去配置并加载。。。
二 动态部署
登陆tomcat管理控制台:http://localhost:8080/,输入用户名和密码后便可管理应用并动态发布。
在Context Path(option):中输入/yourwebname,这代表你的应用的访问地址。
XML Configration file URL中要指定一个xml文件,比如我们在F:下建立一个hmcx.xml文件,内容如下:<Context reloadable="false" />其中docBase不用写了,因为在下一个文本框中填入。或者更简单点,这个文本框什么都不填,在WAR or Directory URL:中键入F:hmcx即可,然后点击Deploy按钮,上面就可以看到了web应用程序,名字就Context Path(option):中的名字。
如果部署.war文件还有更加简单的方式,下面还有个Select WAR file uploae点击浏览选择.war文件,然后点击Deploy也可以。
注意事项
项目部署方式
⑷ 脚本应放在tomcat哪里
1.首先我们就来创建一个普通用户。
groupadd tomcat #加组
useradd -g tomcat -s /usr/sbin/nologin tomcat #向组加用户
usermod -L tomcat #锁定密码,使密码无效
passwd tomcat # 设置密码
通过这四步,我们就把普通用户创建好了,在创建用户时,我们是先创建的组,组创建完成后创建用户并加入该组。
用户创建完成后,就开始给用户设置权限
chown -R tomcat:tomcat /data #分配权限给用户
这就是给拆顷tomcat这个用户设置了可以操旅首陆作data目录及其子目录下的权限,-R就代表该目录及其级联子目录。
[root@localhost data]# ls -l
total 0
drwxr-xr-x. 4 tomcat tomcat 79 May 20 08:03 tomcat
[root@localhost data]#
此时我们通过ls -l 命令就可以看到data目录已经属于tomcat用户芹卖,且拥有查看,写入,执行权限
2.完成了用户创建后,我们就要开始完成tomcat启动脚本。
如代码所示:
#!/bin/bash
tomcat_home=/data/tomcat/tomcat-8484
SHUTDOWN=$tomcat_home/bin/shutdown.sh
STARTTOMCAT=$tomcat_home/bin/startup.sh
case $1 in
start)
echo "启动$tomcat_home"
$STARTTOMCAT
cd /data/tomcat/tomcat-8484/logs
tail -f catalina.out
;;
stop)
echo "关闭$tomcat_home"
#$SHUTDOWN
netstat -anp | grep 8484| grep -v grep | awk '{print $7}' | sed -e 's//java//g' | sed -e 's/^/kill -9 /g' | sh
#pidlist=`ps -ef |grep tomcat |grep -v "grep"|awk '{print $2}'`
#kill -9 $pidlist
#删除日志文件,如果你不先删除可以不要下面一行
#rm $tomcat_home/logs/* -rf
#删除tomcat的临时目录
#rm $tomcat_home/work/* -rf
;;
restart)
echo "关闭$tomcat_home"
$SHUTDOWN
#pidlist=`ps -ef |grep tomcat |grep -v "grep"|awk '{print $2}'`
#pidlist=`netstat -anp |grep 8484 |grep -v "grep"|awk '{print $2}'`
#netstat -anp | grep 8484| grep -v grep | awk '{print $7}' | sed -e 's//java//g' | sed -e 's/^/kill -9 /g' | sh
#kill -9 $pidlist
sleep 5
echo "启动$tomcat_home"
$STARTTOMCAT
#看启动日志
#tail -f $tomcat_home/logs/catalina.out
;;
logs)
cd /data/tomcat/tomcat-8484/logs
tail -f catalina.out
;;
esac
上面代码就是tomcat启动脚本,首先我们要创建一个文本文件,然后将后缀名变成.sh,这里我是用端口号为8484的tomcat作为例子,从脚本文件中可以看到,总共只需对自己tomcat位置和日志位置进行自定义改动后就可以使用,总共有四个命令,start,stop,restart,logs。
脚本文件创建好后,只需将它放入你的服务器中,位置可以自己随意选择,我这里就把它放在了tomcat下bin目录中。
脚本文件放入服务器后其实还不能使用,会有两个问题待解决,一个是格式问题,一个是权限问题。因为我们是文本文件创建的,其格式是文本格式,我们要改成unix格式,所以要进行如下设置
sed -i "s/
//" tomcat-8484.sh #设置脚本文件为unix格式
完成了格式设置后就要为该脚本文件设置权限,因为linux默认文件的权限是drwxr-xr-x,即所有运行权限赋予文件所有者也就是系统管理员(当前我是用系统管理员登录),把读和运行的权限赋予群组用户,把读的权限赋予其他用户,
⑸ linux 中tomcat启动脚本,请解释。
#!/bin/sh ---- 说明本文件是脚本
darwin=false
case "`uname`" in
CYGWIN*) cygwin=true;;
OS400*) os400=true;;
Darwin*) darwin=true;;
esac
----------------------------这几行,判断操作系统类别
while [ -h "$PRG" ] ; do ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`/"$link"
fi
done
-------------------------------------------判断本脚本是否软链接
if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
echo "Cannot find $PRGDIR/$EXECUTABLE"
echo "The file is absent or does not have execute permission"
echo "This file is needed to run this program"
exit 1
fi
------------------------------判断本脚本是否能“执行”,如果不能,退出、提示
exec "$PRGDIR"/"$EXECUTABLE" start "$@" ------运行tomcat,后面的 $@是所有命令行参数
⑹ 命令行启动tomcat,怎么配置
需要进行如下配置:
1、新建文件夹,依次放入jre,tomcat与其他所需文件,其中tomcat中需要放入部署的war。
(6)脚本启动tomcat扩展阅读:
tomcat的启动配置小结
tomcat的启动脚本在tomcat的bin目录下,启动脚本start有两个,分别时startup.bat和startup.sh两个,在windows环境下使用startup.bat启动tomcat,在linux下使用startup.sh启动tomcat,
同理关闭的脚本也有两个shutdown.bat和shutdown.sh两个,分别是在windows下关闭tomcat和linux下关闭tomcat使用。
总结如下:
startup.bat windows下启动
shutdown.bat windows下关闭
startup.sh linux下启动
shutdown.sh linux下关闭
另外还有一个tomcat.exe,这个是在windows下的可执行程序,需要在服务器上安装对应的服务后可以通过tomcat.exe启动tomcat。