Ich versuche, OpenFOAM auf der Google Compute Engine einzurichten, um Simulationen auszuführen, die derzeit mein verwendetes Quad-Core-System sehr stark beanspruchen.
Bisher habe ich es geschafft, OpenFOAM, ParaView und VNC-Server zu installieren. Über den VNC-Server kann ich den Explorer anzeigen, durch die Ordner navigieren und grundlegende Bearbeitungsvorgänge durchführen.
Aber wenn ich versuche, paraFoam (für die Nachbearbeitung) auszuführen, erhalte ich die Fehlermeldung "Anzeige kann nicht geöffnet werden" das gleiche gilt für xclock und xterm
Ich habe meine Datei /etc/ssh/sshd_config auf der VM überprüft, um zu prüfen, ob X11Forwarding aktiviert ist.
Wenn ich dasselbe auf meinem lokalen Rechner unter /etc/ssh/ssh_config überprüfe, ergibt sich Folgendes
ForwardAgent nein ForwardX11 nein ForwardX11Trusted ja
Die VM läuft auf 16.04Ubuntu LTS, ebenso wie die lokale Maschine.
Jede Hilfestellung dazu, wie man die grafischen Anwendungen auf der VM-Instanz auf der Google Compute Engine zum Laufen bekommt, ist sehr hilfreich.
Antwort1
Nun, einen X-Server auf einer Headless-Maschine laufen zu lassen, ist etwas knifflig, weil die virtuelle Maschine grundsätzlich KEINE Grafikkarten dafür hat. Sie können versuchen, einen X-Server laufen zu lassen, der die Bitmap im Speicher speichert, anstatt sie tatsächlich auf einer Grafikkarte auszugeben – genannt Xvfb. Erwarten Sie allerdings keine Hardwarebeschleunigung für Grafiken, aber das könnte ein guter Anfang sein.
Installieren und führen Sie Xvfb aus: Xvfb :0 -screen 0 640x480x24
(ändern Sie die Auflösung nach Bedarf). Führen Sie dann Ihre Anwendung aus: DISPLAY=:0 yourbinary
Wenn die App startet, ist die Hälfte der Arbeit erledigt. Dann möchten Sie vielleicht wissen, was tatsächlich im Inneren passiert. Installieren Sie x11vnc und führen Sie es ähnlich wie die App aus: DISPLAY=:0 x11vnc
. Möglicherweise müssen Sie es konfigurieren, um es für Ihre Anforderungen sicher genug zu machen. Stellen Sie dann einfach eine Verbindung über VNC her, um zu sehen, was im Inneren vor sich geht.