Forum: PC Hard- und Software Script in "Screen" starten


von MaWin (Gast)


Lesenswert?

Hallo Leute,

Möchte gerne ein script in einem Screen starten.
Wenn das Script beendet ist, soll auch die session wieder beendet 
werden.
Mein Startscript sieht wie folgt aus:

#!/bin/sh
screen -X quit
screen -S backup /volume1/scripts/autohddrsync.sh
screen -X quit

Die Ausgabe beim start von diesem Script ist aber:
No sreen session found.

Das könnte daher kommen, das das script zuerst versucht, alle screen 
sessions zu beenden.

Leider wird aber keine screen session namens backup angelegt.

Wer findet den Fehler?

von devzero (Gast)


Lesenswert?

1
       -d -m   Start screen in "detached" mode. This creates a new session but doesn't attach to it. This is useful for system startup scripts.
2
3
       -D -m   This also starts screen in "detached" mode, but doesn't fork a new process. The command exits if the session terminates.

Hilft Dir davon was?

von nicht"Gast" (Gast)


Lesenswert?

Einfach nur ein

screen -mS <name> <script>

wid einen neuen Screen starten, der sich nach Fertigstellung des Scripts 
automatisch schliest. Diesen ganzen screen -X krams kannst du dir 
sparen.

von DPA (Gast)


Lesenswert?

Zunächst mal, warum willst du alle Screen sessions beenden? Das ist doch 
eine total bescheuerte Idee. Das vorherige backup abbrechen, mit "screen 
-S backup -X quit" wäre vermutlich sinvoller, aber auch das ist keine 
wirklich gute idee. Und wozu das ganze nach dem Backup script? Ich würde 
mal vermuten was passiert ist: Keine screen session da, "screen -X quit" 
sagt "No screen session found" backup wird detached gestartet weil kein 
Terminal, zweites "screen -X quit" beendet es sofort wieder. Lass 
mindestens das letzte "screen -X quit" besser weg, die session beendet 
sich selbst wieder wenn das script fertig ist. Und statt "screen -S 
backup /volume1/scripts/autohddrsync.sh" würde ich explizit "screen -d 
-m -S backup /volume1/scripts/autohddrsync.sh" schreiben, dann wird das 
garantiert immer detached gestarted.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.