• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Cronjob vs Konsole

Maik20

Newbie
Hallo zusammen,

mich treibt hier gerade ein Problem in den Wahnsinn.

Ich habe ein Java Programm geschrieben, welches in einer Endlosschleife läuft. Weiterhin gibt es ein Start- und Stop-Script

start: java meinprog

stop: kill pid
Etwas vereinfacht dargestellt.

Logge ich mich auf dem Server per SSH ein und starte dann mein Programm tut es genau das was ich will. Es öffnet eine Datei und prüft die Daten. Anschließend beende ich das Java Proggie per stop.
Alles läuft perfekt!

Nun habe ich mir einen Cronjob erstellt.
8:00 Uhr täglich - start
18:00 Uhr täglich - stop

Das Problem ist das mein Java Programm nun startet, die gleiche Datei wie oben (manuelle Ausführung) prüft. Und mitten in der Prüfung verschwindet der Java Prozess einfach. Per ps aux bekomme ich diesen nicht mehr angezeigt. Als ob dieser irgendwie gekilled wurde.

Nun zu meiner Frage:

Woran kann das liegen? Was ist der Unterschied ob ich ein Programm per Konsole oder Cronjob starte.

Ich schließe Fehler im Java Quellcode aus.
1. Ich schreibe ein Logfile. Dort stehen keine Fehler drin.
2. Starte ich mein Java Proggie manuell und lasse es die gleiche Datei prüfen, läuft es durch. OHNE Fehler.

Besten Dank für eure Hilfe.
Rettet mich vor der Klappsmühle!
 

hillel

Member
cron stellt bereit nur partielle nutzerumgebung - man soll einspeisen mit crontab -e ein test e.g.:

10,25,40,55 * * * * set | mailx -s environment foo@bar.org

so wird man in mail sehen, was man hat an umgebung ...

man soll testen

10,25,40,55 * * * * cat </dev/zero >/dev/null

so soll man mit ps finden immer ein rennend cat alle quarter-stunden mehr ...
 
Oben