Konsole beenden - Programm soll weiterlaufen

Hi allerseits,

ich bin auf der Suche nach einer Möglichkeit, beliebige Programme weiterlaufenzulassen, auch wenn die Konsole, von der aus sie gestartet wurden beendet (logout) wird. Manche Programm bieten ja einen „daemon“-Modus, der das ermöglicht, aber eben nicht alle.

Zb möchte ich per ssh-login Bittorrent starten und dann aber den ssh-client wieder schließen - das Programm soll aber weiterhin laufen - notfalls bis es geKILLt wird.

Wer kann mir sagen, wie das geht?

Danke und LG
Stuffi

Hi,

ich bin auf der Suche nach einer Möglichkeit, beliebige
Programme weiterlaufenzulassen, auch wenn die Konsole, von der
aus sie gestartet wurden beendet (logout) wird. Manche
Programm bieten ja einen „daemon“-Modus, der das ermöglicht,
aber eben nicht alle.

Du kannst jedes beliebige Programm in den Hintergrund schieben, indem Du ein „kaufmännisches und“ an den Aufruf anhängst:

supercoolesprog &

Nachteil: Du kannst es Dir damit nicht „wiederholen“, was besonders be interaktiven Programmen ärgerlich ist. Aber auch für diesen Fall gibt’s was geniales, nämlich screen:

http://www.freebsd.org/cgi/man.cgi?query=screen&apro…

Du erzeugst also eine neue screen-session mit

screen -a -S Supercool

in der Du dann Dein supercooles Prog laufen lässt. Wenn Du Dich abmelden willst, dann drückst Du einfach

STRG+a d

damit verlässt Du die screen-session, die dann im Hintergrund weiterläuft. Jetzt kannst Du Dich gefahrlos ausloggen. Wenn Du die session später wieder aufnehmen willst, lässt Du Dir mit

screen -list

die aktiven sessions anzeigen, Du kannst Dich dann mit

screen -a -r Supercool

wieder in die session einklinken. screen kann noch viele andere tolle Sachen, dazu siehe die man-Page.

Gruß,

Malte.

Du kannst jedes beliebige Programm in den Hintergrund
schieben, indem Du ein „kaufmännisches und“ an den Aufruf
anhängst:

supercoolesprog &

Das habe ich bereits probiert - allerdings wurde das Programm trotzdem gemeinsam mit der Session beendet.

Du erzeugst also eine neue screen-session mit

screen -a -S Supercool

Das werde ich probieren.
Danke!

LG
Stuffi

Hallo,

Du erzeugst also eine neue screen-session mit

screen -a -S Supercool

Ist das ein Root-Promt? Tss

Das werde ich probieren.

alternativ

$ nohup Supercool

HTH,

Sebastian

1 Like

Hi!

supercoolesprog &

Das habe ich bereits probiert - allerdings wurde das Programm
trotzdem gemeinsam mit der Session beendet.

Da hab ich auch schon mal Probleme damit gehabt. Ich habs dann geschafft, indem ich die ganzen IOs von dem Programm auf /dev/null umgeleitet hab:

supercoolesprog > /dev/null 2>&1 &

Bye
Hansi

1 Like

Hi

ich bin auf der Suche nach einer Möglichkeit, beliebige
Programme weiterlaufenzulassen, auch wenn die Konsole, von der
aus sie gestartet wurden beendet (logout) wird. Manche
Programm bieten ja einen „daemon“-Modus, der das ermöglicht,
aber eben nicht alle.

3 Dinge sind iirc zu beachten:

  • nohup (wenn das Terminal nicht schon so eingestellt ist)
  • std-Eingabe umlenken
  • std-Ausgabe umlenken

z.B.:
$> nohup progname param1 param2 &logfile &

Grüße

CMБ