
Estou me conectando a um servidor local que executa o MATLAB (versão 2015a) via ssh com a opção de encaminhamento X ( ssh -X
).
No entanto, quando inicio o MATLAB recebo este aviso:
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.
Quando inicio o MATLAB como root, em vez de Permission denied
na primeira linha, recebo:
libGL error: failed to authenticate magic 1
Os gráficos são péssimos, até o texto (veja a imagem abaixo). Suponho que esse problema esteja relacionado ao encaminhamento dos gráficos para o sistema convidado via ssh. Então pensei que a opção de exibição no MATLAB pudesse ser definida para o display X do sistema convidado, o que fiz:
matlab -display guest-ip:0
Mesmo assim, estou recebendo o erro OpenGL e não há saída gráfica (o matlab é executado no shell e as janelas de figura não aparecem).
O host possui centos-7 e o convidado possui fedora-20 e ambos estão mesa-libGLU
instalados. Qual é a maneira certa de encaminhar gráficos de alta qualidade?
Sistema hospedeiro
Sistema convidado (para comparação)
Responder1
Eu tive esse mesmo problema e resolvi usando o guia de:
http://cplusadd.blogspot.com/2012/01/speeding-up-matlab-over-x11-forwarding.html
Se você fizer login na máquina A via ssh da máquina B e, em seguida, executar o comando do terminal matlab no diretório inicial de A, crie um arquivo no diretório inicial intitulado java.opts
com o conteúdo:
-Dsun.java2d.pmoffscreen=false
Então ssh usando estas opções:
ssh -c arcfour,blowfish-cbc -Y -C username@server
Para mim, isso tornou a execução do matlab sobre o ssh muito, muito melhor.