http://www.moonlor.com/showart.asp?art_id=100
Q:在以tomcat用户启动tomcat时提示:
The JAVA_HOME environment variable is not defined This environment variable is needed to run this program
A
:没有在在tomcat的配置文件.bash_profile中设置环境变量JAVA_HOME,具体设置方法为:加入如下几行:
JAVA_HOME=/home/tomcat/j2sdk1.4.2_08(具体值要以实际的jdk安装路径为准)
export JAVA_HOME
CLASSPATH=/home/tomcat/j2sdk1.4.2_08/lib/tools.jar:/home/tomcat/j2sdk1.4.2_08/lib/dt.jar
export CLASSPATH
Q: 在以tomcat用户登录linux系统后,提示:
-bash: /home/tomcat/j2sdk1.4.2_08: is a directory
-bash: /home/tomcat/j2sdk1.4.2_08/lib/tools.jar:/home/tomcat/j2sdk1.4.2_08/lib/dt.jar:
没有那个文件或目录。
A: 在tomcat的配置文件.bash_profile中JAVA_HOME和CLASSPATH两个变量值的等号“=”后面存在空格,造成路径不能识别。
Q: 在tomcat启动时提示:
Error occurred during initialization of VM
Could not reserve enough space for object heap
A: 在tomcat的bin目录下,catalina.sh文件的tomcat内存参数配置过大,超过机器可用内存总数造成,修改到适当的值即可,修改的参数为:JAVA_OPTS="-Xms50m -Xmx60m"
Q:信息发布后台管理,点击“网站发布”后,提示:
“由于发生I/O
错误.
原因,发布失败,请联系管理员或稍后再试!”
A
:在防火墙上做了端口映射,使后台登录端口不是真正的服务器发布端口,修正方法:登录信息发布后台管理时,使用服务器中原本设置的端口号。
Q:信息发布系统发布的静态页部分字符缺少,不能正常显示。
A
:原因:linux企业版的缺省字符集为GB18030,jdk对该字符集的支持出现问题。
解决方法:修改/etc/sysconfig/下的i18n文件,将如下两行:
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
修改为:
LANG="zh_CN.GBK"
LANGUAGE="zh_CN.GBK:zh_CN.GB18030:zh_CN.GB2312:zh_CN"
Q:如何在Windows下将tomcat装成服务:
A
:
1. 打开DOS命令窗口
2. 进入tomcat的bin路径下(tomcat的路径不要有中文和空格)
3. 执行service.bat install,注意:中间是空格,没有中横线。 服务即安装完成。
4.进入tomcat的bin目录下,双击tomcat5w.exe
5. 在弹出的管理介面中,点击java页签,查看:
a:Java Virtual Machine一栏是否已经记录了java虚拟机的路径(即jvm.dll路径),如果没有,请点击右侧选择按钮,找到jdk路径下/jre/bin/server/jvm.dll
b:Java Classpath一栏是否已经记录了类路径,包括两方面:一个是tomcat自己的启动包,应该指向tomcat下的bin/bootstrap.jar,第二个是jdk的工具包,指向的是jdk安装路径下的/lib/tools.jar,如果这两个路径没有或不完整,请按照tomcat和jdk的实际安装路径填写完整。否则tomcat服务不能成功启动。
说明:以上参数如果jdk
提前已经正确安装,就会一切正常。
6. 在Windows的服务管理和tomcat5w.exe两个地方都可以停止和启动tomcat服务
7. 如果要卸载tomcat服务,请打开DOS命令窗口,进入tomcat的bin路径下(tomcat的路径不要有中文和空格),执行service.bat remove,注意:中间是空格,没有中横线。 服务即卸载完成。
Q:如何在在solaris9上升级j2sdk1.4.2
A
:
1.安装文档在:http://java.sun.com/j2se/1.4.2/install-solaris.html
2. 注意要安装solaris的sdk的专门补丁包,在
http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/J2SE下载补丁.
3. 安装补丁: unzip J2SE_Solaris_9_Recommended.zip到/var/sadm/patch
4.运行:./install_cluster
5.zcat j2sdk-1_4_2_08-solaris-sparc.tar.Z|tar -xf -
6.去掉j2sdk1.3: pkgrm SUNWj3dmo SUNWj3man SUNWj3dev SUNWj3rt
7.pkgadd -d . SUNWj3cfg SUNWj3dev SUNWj3dmo SUNWj3jmp SUNWj3man SUNWj3rt
8. 注意,在装64位jdk之前一定要先安装32位的.
Q:tomcat启动时报某个目录没有权限,启动失败,或者不能执行某些jsp页
A
:tomcat需要tomcat用户具有一些目录和文件的相应权限, 所有目录应该具有读写执行(浏览)的权限,jsp,class文件应该最少具有读权限, 一些文件需要写权限,下面是已知的需要读写权限文件的列表:
$CATALINA_HOME/logs下所有文件
$CATALINA_HOME/work下所有文件
$CATALINA_HOME/publish/main/count.txt文件
$CATALINA_HOME/publish/chatroom/resource下的所有.xml文件
所有上传图片目录都需要写权限。
改变文件目录权限的方法:执行下面命令,设置所有的tomcat安装下的文件和目录,可以保证执行,但是不是很安全。
1. 设置tomcat上级目录/opt所有用户都有读写执行权限:
chmod 777 [tomcat的上级目录]
2. 设置tomcat5.0.28目录下的所有文件的属主为tomcat:
chown -R tomcat [tomcat安装目录]
3. 设置所有tomcat5.0.28下的所有文件和目录的属主(tomcat)具有读写执行权限
chmod 700 -R /opt/tomcat5.0.28
Q:执行startup.sh文件时告诉没有权限不能执行,但这个文件的署主就是当前用户
A
: bin目录下的所有.sh文件都应该设置执行权限,命令为:
chmod 777 [文件名称]
Q:执行startup.sh文件后告诉地址已经使用,导致tomcat不能启动
A
: 可能是前一次执行./shutdown.sh文件关闭tomcat时没有停止已经启动的java进程,而这个进程仍然在监听tomcat所使用的端口,或者有另外一个tomcat正在运行,server.xml文件中的监听端口和当前tomcat冲突。
使用下面命令查看当前系统是否有正在监听的端口(8080--webcache, 90--www或http).
1. 列出所有系统正在监听的端口和绑定的地址netstat -l
2. 找出当前系统中的所有进程,管道符号过滤输出显示包含java字符串的行
ps -A |grep java
输出: pid tty time proc
1021 ? 00:00:00 java
3. 结束一个指定的进程:
kill [进程号]
4. 强制杀死一个进程:
kill -9 [进程号]
如果确定不是别的tomcat运行导致的冲突或者没有java进程运行可以再次运行startup.sh文件启动tomcat
Q:如何将linux的8080端口映射到80端口
A
: 首先要已root用户登录linux系统,然后执行如下命令:
1. 编辑映射策略:
/sbin/iptables -t nat -A PREROUTING -j REDIRECT -p tcp --destination-port 80:80 --to-ports 8080
2. 保存设置:
/sbin/service iptables save
Q:Linux下调整VCM系统运行参数之(一)
如何调整tomcat
的数据库连接参数
A
: 方法如下:
1. 编辑tomcat安装目录下的conf目录下的server.xml文件
vi server.xml
2. 查找到tomcat数据库用户名称参数一行:
/username
将
username
vcmtest
一段的value值更改数据库的有效帐户
3.查找到tomcat数据库用户名称参数一行:
/password
将
password
vcmtest
一段的password值更改数据库的登录口令
4.查找到tomcat数据库用户名称参数一行:
/url
将
username
jdbc:oracle_clob:thin:@//
192.168.9.6:1521/orcl.tcl.com
一段的value值更改数据库的IP地址和Oracle数据库的服务名称为正确值。
Q:Linux下调整VCM系统运行参数之(二)
如何调整tomcat
的占用内存
A
: 方法如下:
1. 编辑tomcat安装目录下的bin目录下的catalina.sh文件
vi catalina.sh
2. 查找到tomcat内存参数一行:/ JAVA_OPTS
3. 将JAVA_OPTS="-Xms
1024m –Xmx
1520m"一行的两个参数依据服务器实际内存数量分别进行更改:
- Xms为tomcat启动初始内存,一般为服务器开机后可用空闲内存减去100兆
- Xmx为tomcat最大占用内存,一般为服务器开机后可用空闲内存减去50兆
说明:以上两个参数关系到tomcat
承受的访问性能,但也要根据服务器实际内存情况设定。
Q:Linux下调整VCM系统运行参数之(三)
如何调整tomcat
的线程参数
A
: 方法如下:
5.编辑tomcat安装目录下的conf目录下的server.xml文件
vi server.xml
6. 查找到tomcat内存参数一段:
/ maxThreads
7. 将maxThreads="450" minSpareThreads="100" maxSpareThreads="300"一段的三个参数依据服务器实际内存数量分别进行更改:
maxThreads为tomcat最大线程数,一般可设置为400~800
minSpareThreads为tomcat最小共享线程数,一般可设置为100
maxSpareThreads为tomcat最大共享线程数,一般可设置为最大线程数减去50
Q:启动服务器后无异常抛出,但无法打开网页:
A
:检查
linux
线程(
$ps -A
)是否有未关闭的
java
进程。