Bei meinem Bürojob bin ich routinemäßig über VNC mit einer Linux-Box verbunden.
Manchmal starte ich einen Remote-Job auf der Konsole und stelle später fest, dass er viel länger als erwartet ausgeführt wird. (Hätte eigentlich unter Screen damit anfangen sollen ...)
Ich möchte meine Workstation nicht über Nacht laufen lassen, nur um die VNC-Sitzung offen zu halten. Ich möchte diesen bereits ausgeführten Remote-Job in eine Bildschirmsitzung (auf der Remote-Box) verschieben, damit ich die Workstation ausschalten und am nächsten Morgen die Verbindung wiederherstellen kann.
Wie kann das überhaupt gemacht werden?
linux
vnc
gnu-screen
DevSolar
quelle
quelle
Antworten:
Schauen Sie sich reptyr an , das macht genau das. Die Github-Seite enthält alle Informationen.
quelle
apt-get
: Auf Debian-Systemen ist es nur ein Katzensprung.Unable to attach. (This most commonly means that 11690 has a suprocesses)
reptyr -T PID
Sie können dies nicht einfach tun. Ich würde vorschlagen, es sich zur Gewohnheit zu machen, den Bildschirm als erstes zu starten, nachdem Sie eine Konsole geöffnet haben.
Für Ihr eigentliches Problem gibt es jedoch noch eine andere Möglichkeit: Nachdem Sie Ihren Job über das Terminal gestartet haben, können Sie ihn mit der Tastenkombination Strg-Z und anschließend im Hintergrund ausführen
bg
. Trennen Sie danach den Job von der übergeordneten Shell. in bash würden Sie tundisown -h %<jobid>
. Danach können Sie das Terminal sicher schließen und der Job wird weiter ausgeführt.quelle
Wie sieht es mit der Verwendung von retty im neu gestarteten Bildschirmprozess aus, wenn Sie Linux verwenden?
HTH
Prost,
quelle