Наш кластер работает под управлением Linux, и я могу успешно войти в него по ssh, используя мой ПК с Windows 10. Однако, когда я пытаюсь использовать переадресацию X11, я всегда получаю ошибку:
qt.qpa.screen: QXcbConnection: Could not connect to display localhost:0.0
Could not connect to any X display
Я пробовал все: Xterminal, PuTTY, Ubuntu (из магазина Windows 10), MobaXterm - и ничего не работает. Я пробовал команду export display, и когда я вхожу в систему, я использую -X (также пробовал -Y). Я читал в интернете, но не смог найти ничего, что бы работало. Кроме того, у моей коллеги есть личный Macbook с такими же свойствами пользователя, и она смогла сделать X11 с помощью XQuartz.
Есть идеи, что можно попробовать?
решение1
При использовании переадресации SSH X11 отображаемый номер обычно должен быть 10.0 или выше.
Если сообщение об ошибке действительно говорит об этом, localhost:0.0
то это может означать, что в кластере есть некая настройка среды, которая переопределяет DISPLAY
переменную.Не делай этого.: sshd
на удаленном конце автоматически установит DISPLAY
переменную на правильное значение как часть инициализации сеанса, когда запросят и примут пересылку X11. Вы не можете знать правильное значение заранее, так как оно будет меняться в зависимости от того, сколько других SSH-подключений X11 к кластеру уже было установлено, когда вы устанавливаете соединение.
Примечание:Настройка export DISPLAY=<name of your Windows host pc>:0.0
на уровне кластера приведет к тому, что все приложения попытаются установить небезопасное, незашифрованное соединение X11 напрямую из приложения к серверу X11 на вашем хосте Windows.Это не рекомендуется.и может (или, скорее, должен!) быть заблокирован брандмауэрами/NAT на любом конце.