[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Prozess erhalten


On Mon, Sep 04, 2006 at 11:57:30AM +0200, Bjoern Konrad wrote:
> Markus Bucher schrieb:
> > Ab und an habe ich in einem Terminalfenster einen Prozess laufen, der einige
> > Zeit in Anspruch nimmt. Sagen wir eine Sicherung.
> > Wie kann ich es erreichen, dass dieser laufende Prozess weiterlaeuft, wenn
> > ich dieses Terminal beende und den Desktop-Rechner ausschalte?
> >
> >   
> versuch es mal mit dem Befehl screen, damit habe ich auf einem 
> RootServer meine Gameserver laufen, da wenn ich das Terminal zu mache 
> diese automatisch beendet werdne. Und mit screen passiert das nicht.
> 
> z.B.
> # screen top
screen ist sicher keine schlechte Loesung.  Etwas schlichter und
vermutlich ueberall vorhanden ist nohup(1)

> > Bzw.: Wenn ein Prozess laeuft und die Terminalverbindung abbricht (Schwache
> > WLAN-Verbindung z.B.), wird dieser Prozess dann weiter ausgefuehrt bis er
> > sich selbst beendet oder wird er nach einem geissen Timeout gekillt?
Leicht vereinfacht hat jeder Prozess ein kontrollierendes Terminal,
in der Regel das, auf dem er gestartet wird.  Geht dieses Terminal
"kaputt", bekommen die zugehoerigen Prozesse das Signal HUP (wie
Hangup) geschickt.  

Was sie mit diesem Signal machen, bleibt im wesentlichen ihnen selbst
ueberlassen (viele Daemonen z.B. -- die natuerlich normalerweise auch
kein kontrollierendes Terminal haben -- laden auf ein HUP hin ihre
Konfiguration neu).  Das Programm nohup faengt es und ignoriert es,
Programme, die nichts weiter unternehmen, beenden sich (das ist der
"default handler" fuer SIGHUP).  Mehr zu diesen Themen unter
signal(2).

        Markus

-- 
http://mailman.uugrn.org/mailman/listinfo/uugrn