免责声明:我不是一个服务器pipe理员,我是一个Windows用户,导致了有罪恶的安装向导和拖放的生活
我试图在由MediaTemple专用虚拟服务器托pipe的CentOS 5上安装Tomcat。
我基本上遵循这个指南 :
[root @ myserver bin]#./startup.sh
- CPanel – 如何阻止Apache以root用户身份运行?
- 为什么apache日志请求使用代码200获取http://www.google.com?
- 我的VirtualHost有什么问题?
- 如何防止雄伟的12索引一个网站
- MySQL优化
Using CATALINA_BASE: /root/apache-tomcat-6.0.14 Using CATALINA_HOME: /root/apache-tomcat-6.0.14 Using CATALINA_TMPDIR: /root/apache-tomcat-6.0.14/temp Using JRE_HOME: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/ [root@myserver bin]#
我在这里错过了一个步骤吗?
编辑:我现在通过查看日志中发现以下错误发生:
VM初始化期间发生错误无法为对象堆预留足够的空间
Tomcat6的要求是什么? 什么版本的Centos? (我假设“某种types的Tomcat”和“目前的Centos”在本文中是5.3)
除非需要Tomcat 6,否则不需要jpackage回购。而且,Centos 5.3附带了openjdk 1.6.0,它已经通过了Java SE 6 TCK。
简单地说,“yum install tomcat5”应该包含所有你需要的依赖(包括openjdk),其中很多依赖于jpackage源代码。 一旦安装,你需要的只是“service tomcat5 start”来启动它。 注:以root身份运行您的Web容器非常非常糟糕,因为这是一个巨大的安全风险。 存储库版本安装的tomcat5服务会将其权限放弃到具有更多有限权限的“tomcat”用户。 要在系统引导时自动启动tomcat,请使用“chkconfig tomcat5 on”。
在上面的情况中,端口8080可能被默认的防火墙阻止。 closures防火墙(build议只用于testing连通性,不要在没有防火墙的情况下运行)使用“service iptables stop”。 Centos提供了用于修改防火墙的GUI和文本UI工具(分别为system-config-securitylevel和system-config-securitylevel-tui),或者你可以直接使用iptables(参见man iptables)。
我仔细按照这个指南解决了这个问题:
http://de0ris.blogspot.com/2008/08/installing-tomcat-6x-on-centos-5.html
正如上面的评论中所提到的,JRE和JDK是单独的下载。 我似乎无法在任何包pipe理器中find它们,所以我必须直接下载它们并运行它们。
那么,看起来tomcat正确地启动了,并且错过的典型的东西被覆盖了。 我会检查并看看机器是否有防火墙运行。 我不是Centos的专家,所以如果默认运行一个,我不知道。 作为root做一个:
netstat -lnp | grep 8080
如果返回任何东西,你的服务器正在运行并在8080上侦听,但某些东西(防火墙)阻止了对它的访问。
如果没有运行,你还有其他的东西要挖掘。 你应该有一个“catalina.out”文件,无论你有tomcat设置为login。 我记得应该是“/ path / to / tomcat / server / logs”。 检查一下,看看是否抛出任何exception。 可以给出更多的线索,以了解正在发生的事情。
VM初始化期间发生错误无法为对象堆预留足够的空间
没有足够的虚拟内存来启动虚拟机。 也就是说,没有足够的物理内存和交换来容纳您使用-Xms
请求的堆方。 当您在虚拟环境中运行时,您需要与Media Temple交谈,了解如何增加可用于您实例的虚拟内存量。
嗯,其基本上你是在开放的VZ VPS,尝试xen或安装它与tomcat自带的JBoss,这将解决内存交换问题。
http://davidanand.blogspot.com/2010/06/jboss-tomcat-on-openvz-centos.html
希望这可以帮助 ;)