Solaris + Äquivalent zum Linux-Screen-Befehl

Solaris + Äquivalent zum Linux-Screen-Befehl

Gibt es ein Solaris-Äquivalent zum Linux-Befehl „Screen“?

Beispiel für die Verwendung des Screen-Befehls in Linux

  example for linux :  screen -D -m   ./run_some_script.pl 


  example for Solaris : ?

Manpage für den Screen-Befehl für Linux: http://www.oreillynet.com/linux/cmd/cmd.csp?path=s/screen

Antwort1

Wenn Sie den Prozess als Ersatz für „screen“ im Hintergrund ausführen möchten, ohne dass er beim Beenden des Servers (oder bei Trennung der Verbindung) beendet wird, stehen Ihnen einige Optionen zur Verfügung:

  • Führen Sie den Prozess in einer Subshell wie folgt aus:

    (meinprog -opts &)

  • Lehnen Sie den Prozess ab (wenn Sie Bash oder Zsh haben), nachdem Sie ihn in den Hintergrund verschoben haben:

    myprog -opts &; verleugnen

  • Führen Sie das Skript mit nohup aus:

    nohup ./myprog 2>&1 &

In den meisten der oben genannten Fälle wird der Prozess vom Benutzer getrennt und unter "init" gesetzt. Das bedeutet, dass Sie ihn sicher beenden können, ohne dass der Prozess heruntergefahren wird (andernfalls wird beim Verlassen der Shell ein SIGHUP an das Programm gesendet, das es herunterfährt).

Sie können sich jedoch nicht erneut mit diesem Prozess verbinden. Für jedes Programm, das Sie mit den obigen Optionen ausführen, müssen Sie die Standardausgabe in eine Datei wie diese schreiben (zum Beispiel diese):

nohup ./myprog  2>&1>myprog.log &

Und dann überwachen Sie diese Datei.

Antwort2

GNU screen ist kein linuxWerkzeug, es ist einGNUTool, das normalerweise in Linux enthalten ist, aber auch häufig in BSD, OSX und *nix zu finden ist. Die Installation unter Solaris sollte einfach sein und es ist wahrscheinlich bereits ein Paket verfügbar.

Eine Alternative zu GNU Screen heißttmux. Obwohl ich glaube, dass dies weniger üblich ist.

Antwort3

Wenn Sie screen für Solaris installieren müssen, erhalten Sie es vonOpenCSW.

verwandte Informationen