
Ich muss eine lange Operation in MATLAB auf einem Remote-Unix-Server ausführen. Aber ich weiß, dass ich nicht die ganze Zeit über SSH angemeldet bleiben kann. Ich bin Root/Admin, falls das hilft.
Wie kann ich das tun, ohne meine Arbeit zu verlieren?
Was ich derzeit mache, ist, MATLAB zu öffnen und dann etwa Folgendes zu tun:
t=cputime; x=A\b; time=cputime-t; save('workspace.mat')
Während dies läuft (x=A\b ist die Operation, die die ganze Zeit in Anspruch nimmt), schließe ich meine SSH-Shell, auf der MATLAB ausgeführt wurde, und die Operation wird nicht weiter ausgeführt. Daher erhalte ich die Ergebnisse nicht.
Wie kann ich dies ausführen, auch wenn ich mich mittendrin von SSH abmelde? Danke.
Antwort1
Sie müssen den Befehl entweder mit einem abschließenden & in den Hintergrund verschieben.
Oder noch besser: installierenBILDSCHIRMund vielleichtBYOBU. Dann können Sie eine dauerhafte Sitzung einrichten, zu der Sie zurückkehren und sie überprüfen können, ohne dauerhaft angemeldet bleiben zu müssen.
Installieren Sie SCREEN und BYOBU auf dem Server und konfigurieren Sie sie wie gewünscht. Nachdem Sie Ihre erste Sitzung gestartet haben, können Sie sich erneut damit verbinden, wenn Sie Ihre SSH-Verbindung beenden und neu starten. Es gibt viele clevere Dinge, die Sie tun können, um Sitzungen zu automatisieren, mehrere Fenster, mehrere Terminals und mehr zu haben.Dieser Artikel auf StackOverflowhat einige Ideen zur Automatisierung von Verbindungen.