Runlevel-Einstellungen werden ignoriert

haustier

Registered User
Hallo,
ich habe meinen vServer [1] inzwischen sorgfältig eingerichtet und mich nun an die Installation von Tomcat gemacht.
Tomcat ist installiert und läuft. Nun habe ich per
Code:
chkconfig tomcat5 on
den Tomcat Systemdienst für den Systemstart aktiviert, überprüft ob er auf "on" steht. Jedoch startet der Dienst bei Neustart nicht, sondern muss jedes mal von Hand aktiviert werden ("/etc/init.d/tomcat5 start").

Kann es sein, dass die Runlevel-Einstellungen bei solchen Plesk-Virtuozzo-vServern ignoriert werden? Falls ja, gibt es eine Möglichkeit den Dienst doch ordentlich automatisch hochzufahren? (bei apache, etc. funktionierts ja)

Danke für eure Zeit und Hilfe!

PS.: die Tomcat Konfiguration wird von Hand, nicht über Plesk, verwaltet.

[1] 1blu vServer "unlimited"
Suse Linux 10.0
Plesk 8.0.1/Virtuozzo
 
Habe den Runlevel-Editor mal installiert. Dort ist tomcat5 als "enabled" für 3, 5 angegeben. Automatisch starten tut er leider trotzdem nicht. (auch keine einträge in den Logs, dass irgendwas passiert wäre)
 
Hallo,

der Autostart läuft über Symlinks in /etc/init.d/rc3.d und /etc/init.d/rc5.d,
schau mal nach ob in den beiden Ordnern Symlinks für Tomcat angelegt wurden
 
Code:
ls /etc/rc.d/rc3.d/ | grep tomcat
K06tomcat5
S16tomcat5
Code:
ls /etc/rc.d/rc5.d/ | grep tomcat
K06tomcat5
S16tomcat5
So wie es aussieht müsste eigentlich alles im lot sein. :confused:

edit: Ich habe einfach das Gefühl, dass der vServer das init script irgendwie umgeht.
 
Last edited by a moderator:
Hallo,

haustier said:
Ich habe einfach das Gefühl, dass der vServer das init script irgendwie umgeht.
und die anderen führt er alles aus? :confused:

Die Symlinks enthalten eine Zahl, schau mal nach ob Tomcat die niedrigste Priorität (höchste Zahl) hat. Wenn nicht setze sie hoch, z.B. einfach mal auf 99 durch Umbenennen des Symlinks.

Steht irgendwas in den Logfiles von einem vergeblichen Startversuch?
 
Auf die Idee bin ich gekommen, weil die "System Services" Einstellungen in Plesk/Virtuozzo irgendwie von den init Einstellungen im System abweichen.
In den Logfiles (/usr/share/tomcat5/logs/*) steht nichts von einem Startversuch.

Hier mal der inhalt von rc5.d
Code:
.             K06drwebd        K10xinetd        S01psa-firewall  S10vzquota       S16qmail
..            K06psa           K15saslauthd     S01psa-vpn       S12courier-imap  S16tomcat5
K02haldaemon  K06qmail         K16syslog        S05network       S12sshd          S17apache2
K03dbus       K06tomcat5       K17network       S06syslog        S12xinetd        S18cron
K04cron       K10courier-imap  K21psa-firewall  S07saslauthd     S16drwebd        S19dbus
K05apache2    K10sshd          K21psa-vpn       S08vzquota       S16psa           S20haldaemon
Werde wohl mal das mit der Reihenfolge ausprobieren, obwohl ich da eher skeptisch bin.

edit: Immernoch
Code:
Checking for Tomcat (/usr/share/tomcat5)                              unused

edit2:
Ich glaub ich hab den Fehler gefunden. Liegt wohl daran, dass die JVM im Server modus starten will (und sofort abschmiert), wenn ich keine Beschränkung (zb.: -Xmx32m) in die JAVA_OPTS packe.
Ich dachte ich hätte das Problem gelöst indem ich die JAVA_OPTS in /etc/profile.local reinschreibe, aber scheinbar wird das nicht vor dem Initskript eingelesen.
Gibt es eine Möglichkeit diese Umgebungsvariable vorher unterzubringen, ohne dass ich das Tomcat Startskript editieren muss?
 
Last edited by a moderator:
Hab die sache jetzt gelöst.

Zuerst hab ich versucht JAVA_OPTS in /etc/profile.local zu setzen, dann ist sie nicht beim bootvorgang gesetzt. Dann hab ichs mit /etc/rc.d/boot.local versucht, hat auch nicht geklappt.
Dann hab ich mir mal das catalina.sh Skript angeschaut. Da ist sogar schon von Haus aus ein kleiner Hack eingebaut. Dieses Skript führt nämlich in CATALIMA_BASE das Skript ./bin/setenv.sh aus, falls es existiert. Also hab ich da die JAVA_OPTS reingepackt und schon startet Tomcat auf bei Systemstart.
 
Back
Top