SSH-JOB soll weiterlaufen
Wer über SSH auf einem ferngewarteten Server eine Aktion startet, der hat nicht immer auf der Rechnung, dass die Aktion (Update, Backup, Download) längere Zeit beanspruchen kann. Der aktuell genutzte PC kann daher nicht beendet werden, ohne zugleich die Aktion auf dem Server abzubrechen. Störend ist das in erster Linie, wenn man vorhat, den Rechner eigentlich in Kürze herunterzufahren.
Die an dieser Stelle schon mehrfach beschriebenen Terminalmultiplexer wie beispielsweise Tmux helfen nicht direkt weiter: Sie erlauben zwar das Schließen des Terminals und sogar das Abmelden vom System, jedoch nicht das Herunterfahren: Beim Shutdown wird die Tmux- oder Screen-sitzung beendet, und folglich stoppt auch die Aktion auf dem entfernten Ssh-server. Das Problem ist lediglich durch den Umweg über einen zweiten Ssh-server zu lösen.
Das klingt jetzt nach einem Administratoren-thema im Serverraum, ist allerdings in Zeiten des Raspberry-booms längst auch beim Heimanwender gelebter Alltag. Im konkreten Fall funktioniert das so:
1. Sie starten auf dem PC, den Sie demnächst herunterfahren wollen, im Terminal eine Sshsitzung auf dem Server, der nur als Mittelsmann dienen soll – etwa mithilfe von ssh root@192.168.178.20 2. Dort muss Tmux installiert
sein (sudo apt install tmux), das Sie mit tmux starten und dann auf dem eigentlichen Zielrechner die Ssh-sitzung öffnen: ssh root@192.178.168.30
3. Auf dem Ssh-prompt des Zielrechners starten Sie sodann den gewünschten Prozess.
4. Den Rechner, auf dem Sie aktuell arbeiten, können Sie nunmehr jederzeit beenden. Tmux auf dem vermittelnden Rechner sorgt dafür, dass der Prozess auf dem Zielrechner weiterläuft. -ha