Permalink to this page: https://cwiki.apache.org/confluence/x/HSolBg
- I have Tomcat x.y.z installed as part of my OS. Is it good to use?
- When I run ps (on Linux), why do I see my java process a bazillion times!
- How do I run without an X server and still get graphics?
- Tomcat dies after I log out!
Many Linux distributions provide a pre-packaged version of Apache Tomcat.
These packages work fine and are easy to install for a normal single-instance case, but they make it more difficult for more specific use cases, and more difficult for people on the Tomcat User mailing list to help you. That is because each of these packages distributes the files of Tomcat in different places on the disk, sets different environment variables, sets different links from one directory to the other in the filesystem, etc.. Moreover, some of those packages are notably outdated.
So it would be better to install a "standard" tomcat downloaded from the website http https://tomcat.apache.org/, to some directory like
/opt/tomcat, and follow the instructions that are given in the "RUNNING.txt" file.
- Download a "binary" version. There is usually no need to re-compile Tomcat from the source code.
- Either a "tar.gz" or a "zip" file is fine. The "tar.gz" files use GNU extensions to the tar file format (as mentioned in "README" file in the download area). You need a GNU-compatible version of
tarto unpack them.
- Learn how to run Tomcat with separate values of
CATALINA_BASE, as explained in "RUNNING.txt". This will simplify further upgrades and maintenance.
Linux implemented threads as processes. Due to other gory details that is beyond the scope of this FAQ - the ps command doesn't work correctly with respect to threads. You can get more gory details here and here .
You either need to run headless or run an alternate X-server. Some more information can be found here, here, or here. Or if your are using a JVM 1.4 or better, you can use the system property
This is a common complaint when using Solaris. Make sure you use
nohup and see this thread
StandardServer.await: create: Throwable occurred: java.net.BindException: The socket name is not available on this system."
This error message can have 2 causes:
- Java on AIX isn't supporting IPv6 properly. Fix by inserting
- 2. Your networking configuration is not correct. If you attempt to
ping localhostand don't see 127.0.0.1 you need to look into your
/etc/host.conf(most Unixes/Linux) or
/etc/netsvc.conf(AIX) file to ensure that something like "hosts = local, bind" is present.
webapps/examples/WEB-INF/classes and check whether the class file mentioned in the error message does exist.
If you downloaded a tar.gz file and used a non-GNU version of tar (e.g. on Solaris) it may use wrong (truncated) file names on files that are deep in the hierarchy. This occurs silently: there may be no error or warning during unpacking. One place that is known to suffer from this is the examples web application. The workaround is to download a "zip" file instead of a "tar.gz" one. thread