Правильный метод, кажется, имеет некоторые проблемы:
http://cygwin.1069669.n5.nabble.com/Windows-GUI-programs-eg-notepad-start-but-are-invisible-after-ssh-login-td56256.html
http://cygwin.com/ml/cygwin/2007-10/msg00334.html
Переустановите 'sshd', указав флаг '-i' в 'cygrunsrv', или отредактируйте текущую службу в разделе "Администрирование" -> "Службы" и установите флажок "Разрешить службе взаимодействовать с рабочим столом" на вкладке "Вход в систему" службы. «Свойства».
Поэтому я попробую взломать. Я создаю cygwin_screen.cmd и помещаю его в папку автозагрузки Windows.
@echo off
C:
chdir C:\cygwin\bin
bash --login -i "/home/username/bin/start_screen.sh"
start_screen.sh прост, и он позаботится о том, чтобы у нас был экран для прикрепления.
#!/bin/bash
screen -dmS "my_screen"
Теперь я могу удаленно войти в Windows из ssh-клиента и подключиться к этому экрану, когда я хочу запустить приложение Windows GUI.
$screen -d -r my_screen
$notepad.exe
$cygstart my_doc.doc