Article ID: 1168, created on Oct 6, 2008, last review on May 7, 2014

  • Applies to:
  • Virtuozzo containers for Linux

Resolution

If tomcat does not work in a container environment try to run java, for example:

# java -version
Segmentation fault


If you get 'Segmentation fault', make sure that 'nx' CPU flag is disabled. Run:

# cat /proc/cpuinfo | grep nx
flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm pni monitor ds_cpl cid
flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm pni monitor ds_cpl cid


If you see an output of the command above, try to disable 'nx' CPU flag and reboot the node.
It should be done on the hardware node, you can add this option:noexec=off to the kernel parameters in your boot loader configuration file. If you have no access to harware node please contact your server provider and ask them to do that.

This problem should be fixed in jdk version 1.4.2_05 or newer (including 1.5 branch).

d02f9caf3e11b191a38179103495106f e8e50b42231236b82df27684e7ec0beb 2897d76d56d2010f4e3a28f864d69223

Email subscription for changes to this article
Save as PDF