Veröffentlicht 14. August 201411 j Nach wieviel Zeit wird ein mittels & gestarteter Prozess gekillt, wenn man sich per ssh einwählt? Gelegentlich muss ich an meinem Server einen rake-Task/Prozess (von RubyOnRails) neustarten, weil er irgendwann aufgehört hat, zu arbeiten; das wird alle 10min per crontab mittels ps ax | grep resque überprüft, dann wird mir ne mail gesendet, wenn der Prozess nicht mehr läuft. Frage: Wird ein Prozess, der mittels & gestartet wurde, irgendwann einfach beendet oder liegt es daran, dass der User per ssh nicht mehr eingeloggt ist? Jemand ne Idee?
14. August 201411 j & startet keinen Prozess, sondern verschiebt ihn in den Hintergrund. Dort läuft er so lange weiter, bis er fertig ist, gekillt wird oder mit fg wieder in den Vordergrund geholt wird. Ich befürchte, dass Dein Skript Abbruchbedingungen beinhaltet oder irgendwann am Ende angelangt ist.
14. August 201411 j Starte das Script doch in einer screen oder tmux-Session. Dann kannst du ab und zu schauen, ob es neuen Output (beispielsweise eine Fehlermeldung) gab. Insgesamt erscheint es mir aber falsch ein Script welches dauerhaft läuft in einer interaktiven Session zu starten und nur in den Hintergrund zu schicken. Setze es doch als Dienst auf. Je nach init-System ist eventuell sogar ein automatischer Neustart bei Fehlern möglich.
14. August 201411 j Starte ihn mit: nohup deinskript.sh & Dann läuft er auch weiter wenn die SSH Session beendet wird. Nohup = no hangup Gruß Itbert
18. August 201411 j Itbert hat da nicht so ganz unrecht. Bei SSH-Sessions kann es nämlich sein, dass alle Skripte usw. beendet werden sobald die SSH-Session endet. Meines Meinung nach wurde dies in der SSH-Config definiert, weiß leider nicht mehr an welcher Stelle. Also einfach mit nohup probieren oder wie afo sagt als Dienst konfigurieren. Gruß bummel
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.