Programme starten über SSH
Hallo Liste, ich habe auf meinem Server einen ML-Donkey laufen. Nun möchte ich über ssh Zugriff diesen Server starten können. Über ein Webinterface kann ich ihn bei Bedarf ausschalten. Starten jedoch nicht. Wenn ich mir ein "normales" Script schreibe in dem steht rm servers.ini ./mldonkey und dieses ausführe, knallt der ML-Donkey zu, sobald ich die SSH Verbindung trenne. Mir ist nicht ganz klar warum. Gibt es jemanden, der mir ein Beispiel eines funktionierenden Scripts liefern kann? Danke im Voraus. Fabio
Hallo, am 03 February 2003 um 00:45 schrieb Fabio Patro:
und dieses ausführe, knallt der ML-Donkey zu, sobald ich die SSH Verbindung trenne. Mir ist nicht ganz klar warum. das ist logisch. Linux beendet die Prozesse, wenn man sich ausloggt. Ausnahme (Imho) die in den Hintergrund geschickt wurden.
Gibt es jemanden, der mir ein Beispiel eines funktionierenden Scripts liefern kann? Viel besser. Setze Dich mal mit "screen" auseinander, einer der besten Tools fuer Linux ueberhaupt. Mit screen kannst Du sesssions starten und die bei bedarf "abtrennen". Wenn Du spaeter screen neu startest, werden diese sessions wieder "eingehaengt". In der Zwischenzeit laufen die natuerlich weiter.
screen CTRL-A c macht nen neues "Fenster" auf CTRL-A w zeigt Fenster CTRL-A <0 bis 9> springt zwischen den Fenstern hin und her CTRL-A d detachted die Session, Du kannst Dich anschliessend ausloggen Bei naechsten Start, dann "screen -r" eingeben und voila, Du bist wieder da wo Du warst. Wie gesagt, alle Fenster in allen Session laufen weiter waehrend Du ausgeloggt bist. -- Deutsche ProFTPD Doku: www.proftpd.de Renamer for KDE: www.krename.net Barcode Solution for KDE: www.kbarcode.net
* Stefan Onken schrieb am 03.Feb.2003:
am 03 February 2003 um 00:45 schrieb Fabio Patro:
und dieses ausführe, knallt der ML-Donkey zu, sobald ich die SSH Verbindung trenne. Mir ist nicht ganz klar warum. das ist logisch. Linux beendet die Prozesse, wenn man sich ausloggt. Ausnahme (Imho) die in den Hintergrund geschickt wurden.
Nicht ganz. Wenn man sich ausloggt, dann werden an alle Prozesse, die von diesem Terminal kontrolliert werden ein SIGHUP = Signal 1 gesendet, auch an Hintergrundprozesse. Normalerweise wird der Prozeß dadurch abgebrochen. Aber wie jedes andere Signal, außer SIGKILL und SIGSTOP, kann auch SIGHUP abgefangen werden. Das kann vom Prozeß selber geschehen, oder auch etwa durch nohup. Bernd -- Bitte die Etikette beachten: http://www.suse-etikette.de.vu/etikette.html Bitte Realnamen angeben, kein Vollquoting, kein Html, PGP oder Visitenkarten benutzen. Signatur mit "-- " abtrennen, bei Antworten "Re: " voranstellen, sonst nichts. |Zufallssignatur 4
participants (4)
-
B.Brodesser@t-online.de
-
Fabio Patro
-
Stefan Onken
-
Sven Soliman