ssh - ошибка: не удалось получить RGB, визуализация с двойной буферизацией

Я пытаюсь запустить косвенную программу GLX через X11 перенаправил SSH. Где графика отображается на стороне X-сервера. Сервер ssh работает в Ubuntu 16.04 LTS (будет называться ubuntu) и ssh-клиентом Arch Linux (будет называться arch).

Я запускаю X server на арку с xinit xfce4-session -- +iglxи подключиться к Ubuntu с ssh connor@server -Xp 23Я тогда бегу export LIBGL_ALWAYS_INDIRECT=1 затем перейдите к запуску клиентов glx. Ниже я попробовал запустить некоторые программы glx:

connor@server:~$ glxinfo
name of display: localhost:10.0
Error: couldn't find RGB GLX visual or fbconfig
connor@server:~$ glxgears
Error: couldn't get an RGB, Double-buffered visual

Это графические устройства для арки:

[connor@archlinux ~]$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)
01:00.0 VGA compatible controller: NVIDIA Corporation GM204M [GeForce GTX 970M] (rev a1)

В сеансе SSH графические устройства выглядят следующим образом:

connor@server:~$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)

Ubuntu, кажется, наводит на мысль о X-соединениях, таких как запуск xterm или xeyes, его конфигурация sshd содержит:

X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

Я пытался запустить X-сервер с -listen tcp также позволяя Remore с xhost +, На Ubuntu, вместо того, чтобы установить DISPLAY=arch:0.0, Но все равно безуспешно с такими же результатами. Странно, подключение через порт windows Xorg; VcXsrv, я могу соединиться с замазкой с тем, что я предполагаю, что это косвенный рендеринг, так как частоты кадров достигают уровня 60 кадров в секунду на полном дисплее 1920p на том же оборудовании и соединении (сравнимо с моими предыдущими результатами 5 кадров в секунду при низком разрешении),

Я прошу потенциальных решений и помощи, мое разочарование развилось через неделю после того, как я попробовал все, о чем я могу думать, с теми же результатами. Моим последним средством является установка Arch Linux на сервер Ubuntu, так как это может быть своего рода проблемой сравнимости.

1 ответ

У меня была такая же проблема. Я решил это, используя вместо . Итак, команда будет такой:

      ssh -Y user@host
$ glxgears
....

Некоторая справочная информация: когда я использовал Ubuntu (в качестве сервера и клиента — 18,04 дня), у меня все работало нормально. Однако когда я переключился на Arch, это перестало работать. Некоторые программы (например,lxterminalиxeyes) все еще работают под Arch, просто-X, но я обнаружил, что такие программы, какglxgearsиglxinfoи другие отказываются запускаться с описанной вами ошибкой(Error: couldn't get an RGB, Double-buffered visual). После некоторых поисков Arch Wiki сделал следующее примечание:

Совет: вы можете включить опцию ForwardX11Trusted (переключатель -Y в командной строке), если графический интерфейс прорисовывается плохо или вы получаете ошибки; это предотвратит попадание переадресации X11 под контроль расширения X11 SECURITY. Если вы это сделаете, обязательно прочтите предупреждение в начале этого раздела.

Ссылка на Wiki Arch: https://wiki.archlinux.org/title/OpenSSH#X11_forwarding.

Я попробовал это, и это сработало для меня. Глядя на вопросы безопасности (я не эксперт в этом), кажется, что основная проблема заключается в том, что-Yпозволяет окнам брать фокус, захватывать ввод (для клавиатуры и мыши) и вводить события ввода. Я полагаю, что если вы доверяете обеим машинам (серверу и клиенту) и программам, которые вы запускаете, через пересылку ssh X11, то все должно быть в порядке. Но я не эксперт в этом. Дополнительную информацию можно найти здесь: https://security.stackexchange.com/questions/14815/security-concerns-with-x11-forwarding .

Другие вопросы по тегам