Irgendwelche Vorschläge für ein Netbook / Desktop-Setup zum Ausführen von Python für das Scientific Computing?

415
pdevar

Dies mag wie eine unangemessene Frage erscheinen, die in ein Hardware-Forum verwiesen werden sollte, aber ich liebe StackExchange für andere Dinge und dachte, Sie könnten vielleicht helfen! Ich hatte meinen Laptop vor ein paar Tagen gestohlen und muss wieder laufen.

Ich benutze Python täglich und brauche eine Lösung für schnelles wissenschaftliches Computing. Mein Gedanke war, einen Desktop mit Linux zu kaufen und über ein Netbook aus der Ferne darauf zuzugreifen. Nach allem, was ich online gelesen habe, scheint VNC sehr langsam zu sein, aber ich muss nur auf das Terminal von außerhalb der Wohnung zugreifen, also gibt es vielleicht einen anderen Weg?

Wenn jemand diese Art von Einrichtung verwendet, würden wir uns über Anregungen oder Ratschläge freuen!

1

1 Antwort auf die Frage

0
barlop

VNC ist möglicherweise etwas langsam, aber ssh gibt nur die Befehlszeile an und ist nicht langsam .. und ssh -X kann möglicherweise eine GUI mit einer angemessenen Geschwindigkeit anzeigen. Ich habe einen Freund, der ein Wissenschaftler ist, der über ein Macbook-Laptop verfügt. Er verwendet ssh, um bei der Arbeit zum Terminal auf seinem Computer zu gelangen, und ssh -X, wenn er auf eine GUI-App zugreifen möchte. (Ich bin nicht ganz sicher, wie ssh -X funktioniert), aber ssh greift leicht auf die Befehlszeile zu. ssh ist DAS Programm für den Fernzugriff auf ein Terminal. Es wurde längst von telnet übernommen, was DAS Programm war.

Hinzugefügt

Was ist, wenn die Arbeitsfirewall nicht "nett spielt". Ich bin nicht sicher, was mein Freund (der Wissenschaftler) getan hat, und es lohnt sich zu prüfen, ob die Universität irgendwelche Methoden hat, z. B. ein VPN. Firewalls lassen ausgehende Verbindungen durchaus zu. Beispiel: Web-Browsing ist eine ausgehende Verbindung an Port 80 oder Port 443 - ausgehend bedeutet, dass von der Arbeit zu Hause nach Hause geleitet wird, und dann Pakete, die in diese Verbindung hinein- und herausfließen.

Was Sie tun können, ist ein sogenannter Reverse-SSH-Tunnel. Beim Tunneling wird ein Protokoll in einem anderen Protokoll verkapselt (oder könnte man sagen: Schmuggeln), um etwas bereitzustellen, das nicht anderweitig unterstützt wird.

Nehmen Sie an, Ihr Zuhause ist H und Ihre Arbeit ist W. Wenn Sie in W sitzen, können Sie eine Verbindung zu H herstellen. Wenn Sie in H sitzen, können Sie keine Verbindung zu W herstellen, da sich W hinter einer restriktiven Firewall befindet. Richten Sie einen SSH-Server auf W ein. Wenn Sie nun den gerade eingerichteten SSH-Server beiseite legen, setzen Sie sich in W und stellen eine Verbindung zu einem SSH-Server auf H her. Also führt H einen SSH-Server aus. Dies ist jedoch nicht so, dass Sie eine Verbindung zu einer Shell bei H herstellen können. Ich weiß, dass Sie eine Shell bei W wünschen. Sie sitzen bei W und verbinden sich in besonderer Weise mit einem SSH-Server bei H. (SSH-Reverse-Tunnel) was H anweist, dass sich ein (anderer) Server auf H öffnet (dieser Server ist kein SSH-Server, er hört und leitet weiter). Dieser Server kann so eingestellt werden, dass nur lokale Verbindungen akzeptiert und an W gesendet werden. Bei W sollten sie an einen SSH-Server an W weitergeleitet werden. Bei H verbinden Sie dann einen SSH-Client mit sich (H). dann wird das dann an W weitergeleitet, das dann an den SSH-Server weitergeleitet wird. Sie haben also zwei Verbindungen, die in eine andere Richtung gehen. Dies erfolgt in zwei Befehlen. Ein ssh -R erstellt den umgekehrten Tunnel (ein lokaler Tunnel wäre ssh -L). Dann wäre der zweite Befehl in Ihrem Fall ssh user@127.0.0.1 oder in einer anderen Person vnc. Vielleicht müssen Sie das nicht tun. Aber nur damit Sie wissen ... Ein SSH-Reverse-Tunnel wäre genau das, was Sie untersuchen möchten, wenn Ihre Firewall einschränkend wäre. Wenn ich das tun würde, hätte ich es vorher nicht gemacht, würde ich versuchen, VNC durch einen lokalen Tunnel zu machen, dann einen umgekehrten Tunnel und dann, was Sie wollen - SSH durch einen umgekehrten SSH-Tunnel. Sie haben also zwei Verbindungen, die in verschiedene Richtungen gehen. Dies erfolgt in zwei Befehlen. Ein ssh -R erstellt den umgekehrten Tunnel (ein lokaler Tunnel wäre ssh -L). Dann wäre der zweite Befehl in Ihrem Fall ssh user@127.0.0.1 oder in einer anderen Person vnc. Vielleicht müssen Sie das nicht tun. Aber nur damit Sie wissen ... Ein SSH-Reverse-Tunnel wäre genau das, was Sie untersuchen möchten, wenn Ihre Firewall einschränkend wäre. Wenn ich das tun würde, hätte ich es vorher nicht gemacht, würde ich versuchen, VNC durch einen lokalen Tunnel zu machen, dann einen umgekehrten Tunnel und dann, was Sie wollen - SSH durch einen umgekehrten SSH-Tunnel. Sie haben also zwei Verbindungen, die in verschiedene Richtungen gehen. Dies erfolgt in zwei Befehlen. Ein ssh -R erstellt den umgekehrten Tunnel (ein lokaler Tunnel wäre ssh -L). Dann wäre der zweite Befehl in Ihrem Fall ssh user@127.0.0.1 oder in einer anderen Person vnc. Vielleicht müssen Sie das nicht tun. Aber nur damit Sie wissen ... Ein SSH-Reverse-Tunnel wäre genau das, was Sie untersuchen möchten, wenn Ihre Firewall einschränkend wäre. Wenn ich das tun würde, hätte ich es vorher nicht gemacht, würde ich versuchen, VNC durch einen lokalen Tunnel zu machen, dann einen umgekehrten Tunnel und dann, was Sie wollen - SSH durch einen umgekehrten SSH-Tunnel. 0.0.1 oder könnte vnc in einer anderen Person sein. Vielleicht müssen Sie das nicht tun. Aber nur damit Sie wissen ... Ein SSH-Reverse-Tunnel wäre genau das, was Sie untersuchen möchten, wenn Ihre Firewall einschränkend wäre. Wenn ich das tun würde, hätte ich es vorher nicht gemacht, würde ich versuchen, VNC durch einen lokalen Tunnel zu machen, dann einen umgekehrten Tunnel und dann, was Sie wollen - SSH durch einen umgekehrten SSH-Tunnel. 0.0.1 oder könnte vnc in einer anderen Person sein. Vielleicht müssen Sie das nicht tun. Aber nur damit Sie wissen ... Ein SSH-Reverse-Tunnel wäre genau das, was Sie untersuchen möchten, wenn Ihre Firewall einschränkend wäre. Wenn ich das tun würde, hätte ich es vorher nicht gemacht, würde ich versuchen, VNC durch einen lokalen Tunnel zu machen, dann einen umgekehrten Tunnel und dann, was Sie wollen - SSH durch einen umgekehrten SSH-Tunnel.

Danke @barlop, ich habe mich entschieden, nur mit diesem Setup zu gehen. Ich habe ein Chrome-Book gekauft und habe vor, Crouton (Ubuntu Linux) auf einer SD-Karte zu installieren, damit ich einen X-Server auf der Desktop-Workstation betreiben kann. Jetzt ist nur die Frage, ob die Firewall meiner Universität gut funktioniert. pdevar vor 9 Jahren 0
@pdevar Ich habe gerade etwas zu einer restriktiven Firewall hinzugefügt. Übrigens, sehen Sie, was andere Technikfreaks an der Uni gemacht haben ... Sie könnten dort nach Linux-Fanatikern suchen, da sie einige Möglichkeiten haben könnten. Obwohl ich mit meinem Freund (dem Wissenschaftler) einverstanden bin, ist der einzige Linux mit einer guten GUI Mac. Das ssh -X kann nur für Linux gelten. Aber ssh-Tunneling und die ssh-Shell können Sie unabhängig vom Betriebssystem ausführen. barlop vor 9 Jahren 0