Weiterleiten hochwertiger Grafiken von Matlab über SSH

Weiterleiten hochwertiger Grafiken von Matlab über SSH

Ich verbinde mich über SSH mit der X-Weiterleitungsoption ( ssh -X) mit einem lokalen Server, auf dem MATLAB (Version 2015a) läuft.

Wenn ich MATLAB starte, erhalte ich jedoch diese Warnung:

libGL error: failed to open drm device: Permission denied
libGL error: failed to load driver: nouveau
libGL error: dlopen /usr/lib64/dri/swrast_dri.so failed (/usr/local/MATLAB/R2015a/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /lib64/libLLVM-3.5-mesa.so))
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
MATLAB is selecting SOFTWARE OPENGL rendering.

Wenn ich MATLAB als Root starte, erhalte ich statt Permission deniedin der ersten Zeile:
libGL error: failed to authenticate magic 1

Die Grafiken sind schrecklich, sogar der Text (siehe Screenshot unten). Ich vermute, dieses Problem hängt mit der Weiterleitung der Grafiken per SSH an das Gastsystem zusammen. Daher dachte ich, die Anzeigeoption in MATLAB könne auf die X-Anzeige des Gastsystems eingestellt werden, was ich folgendermaßen getan habe:
matlab -display guest-ip:0

Selbst dann erhalte ich den OpenGL-Fehler und es gibt keine grafische Ausgabe (Matlab läuft in der Shell und es werden keine Abbildungsfenster angezeigt).

Der Host hat CentOS 7 und der Gast hat Fedora 20 und beide sind mesa-libGLUinstalliert. Was ist der richtige Weg, um qualitativ hochwertige Grafiken weiterzuleiten?


Host-System Bildbeschreibung hier eingeben

Gastsystem (zum Vergleich) Bildbeschreibung hier eingeben

Antwort1

Ich hatte dasselbe Problem und habe es mithilfe der Anleitung von folgendem gelöst: http://cplusadd.blogspot.com/2012/01/speeding-up-matlab-over-x11-forwarding.html Wenn Sie sich von Maschine B aus per SSH bei Maschine A anmelden und dann den Matlab-Terminalbefehl im Home-Verzeichnis von A ausführen, erstellen Sie im Home-Verzeichnis eine Datei java.optsmit dem folgenden Titel:

-Dsun.java2d.pmoffscreen=false

Führen Sie dann SSH mit diesen Optionen durch:

ssh -c arcfour,blowfish-cbc -Y -C username@server

Für mich war es dadurch viel, viel einfacher, Matlab über SSH auszuführen.

verwandte Informationen