Wie kann ich per Telnet eine Aufgabe im Hintergrund laufen lassen?

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

Christian72D

Benutzer
Registriert
29. Apr. 2010
Beiträge
728
Reaktionspunkte
15
Punkte
44
Ich hatte das schon mal gewusst aber ewig nicht benutzt, und da ich bis auf die DS nichts mit Linux zu tun habe weiß ich nicht mehr wie das ghet.

Es gab doch eine Möglichkeit einen Task im Hintergrund zu starten so daß nicht die ganze zeit der PC mit geöffneter Telnet Session laufen muss.

Wie ging das noch mal?
 
Etwas mehr Info als Du brauchtest, aber die wichtige Zeile ist hervorgehoben :D

screen muß natürlich installiert sein, sonst ggeht es nicht :o

screen -help
Use: screen [-opts] [cmd [args]]
or: screen -r [host.tty]

Options:
-a Force all capabilities into each window's termcap.
-A -[r|R] Adapt all windows to the new display width & height.
-c file Read configuration file instead of '.screenrc'.
-d (-r) Detach the elsewhere running screen (and reattach here).
-dmS name Start as daemon: Screen session in detached mode.
-D (-r) Detach and logout remote (and reattach here).
-D -RR Do whatever is needed to get a screen session.
-e xy Change command characters.
-f Flow control on, -fn = off, -fa = auto.
-h lines Set the size of the scrollback history buffer.
-i Interrupt output sooner when flow control is on.
-l Login mode on (update /var/run/utmp), -ln = off.
-list or -ls. Do nothing, just list our SockDir.
-L Turn on output logging.
-m ignore $STY variable, do create a new screen session.
-O Choose optimal output rather than exact vt100 emulation.
-p window Preselect the named window if it exists.
-q Quiet startup. Exits with non-zero return code if unsuccessful.
-r Reattach to a detached screen process.
-R Reattach if possible, otherwise start a new session.
-s shell Shell to execute rather than $SHELL.
-S sockname Name this session <pid>.sockname instead of <pid>.<tty>.<host>.
-t title Set title. (window's name).
-T term Use term as $TERM for windows, rather than "screen".
-U Tell screen to use UTF-8 encoding.
-v Print "Screen version 4.00.03 (FAU) 23-Oct-06".
-wipe Do nothing, just clean up SockDir.
-x Attach to a not detached screen. (Multi display mode).
-X Execute <cmd> as a screen command in the specified session.
 
reicht da nicht ein & ans Ende des Befehls zu setzen?
 
reicht da nicht ein & ans Ende des Befehls zu setzen?

solange man das Telnet-Fenster nicht schließt, würde das ausreichen

Alternativen zu 'screen':

(1) einen cronjob aufsetzen
(2) einen Skript als Dienst starten (/usr/syno/etc/rc.d-Verzeichnis)
(3) per IPKG den 'at' installieren und benutzen (wie unter Windows)
(4) die Beta 4.2 installieren ... da gibts es auch etwas zum Starten eigener Skripte

Itari
 
Hallo,
(2) einen Skript als Dienst starten (/usr/syno/etc/rc.d-Verzeichnis)
ich empfehle lieber /usr/local/etc/rc.d, das Verzeichnis überlebt ein Firmwareupgrade.

Gruß Götz
 
solange man das Telnet-Fenster nicht schließt, würde das ausreichen
DAS ist mir auch klar.
Aber ich habe gestern die Platte gewechselt und spiele jetzt die alten Daten wieder auf.
Ich hatte die einzelnen Verzeichnisse gezipt, da finde ich es praktischer per Telnet das Archiv wieder auspacken zu lassen und dann die Session schließen zu können damit der PC nicht die ganze Zeit mitlaufen muss.

Und für eine einmalige Sache brauche ich ja keinen Cronjob.
 
Etwas mehr Info als Du brauchtest, aber die wichtige Zeile ist hervorgehoben :D

screen -help
Use: screen [-opts] [cmd [args]]
or: screen -r [host.tty]
Das was ich damals benutzt hatte war viel einfacher. Da konnte man später wieder eine telnet Session öffnen, mit dem entsprechenden befehl die Liste aller im Hintergrund laufenden Session ansehen und die passende auswählen (wenn es mehrere waren).
 
Hallo,
nohup <BEFEHL> &

Gruß Götz
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat