Cygwin sshdを実行しているWindowsボックスにsshし、そのWindowsボックスでWindows GUIアプリケーションを実行したいと思います。X転送を必要としません。
たとえば、ubuntu-serverターミナルから、sshdを実行しているWindowsにsshしてから、notepad.exeを起動します。notepad.exeは、Xウィンドウのないubuntu-serverではなく、Windowsで表示されます。
Cygwin sshdを実行しているWindowsボックスにsshし、そのWindowsボックスでWindows GUIアプリケーションを実行したいと思います。X転送を必要としません。
たとえば、ubuntu-serverターミナルから、sshdを実行しているWindowsにsshしてから、notepad.exeを起動します。notepad.exeは、Xウィンドウのないubuntu-serverではなく、Windowsで表示されます。
回答:
適切な方法にはいくつかの問題があるようです:
http://cygwin.com/ml/cygwin/2007-10/msg00334.html
「-i」フラグを「cygrunsrv」に指定して「sshd」を再インストールするか、「管理ツール」->「サービス」で現在のサービスを編集し、サービスの「ログオン」タブで「サービスがデスクトップと対話することを許可する」にチェックを入れます"プロパティ"。
だから私はいくつかのハックを試します。cygwin_screen.cmdを作成し、WindowsのStartupフォルダーに配置します。
@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"
これで、sshクライアントからWindowsにリモートログインし、Windows GUIアプリケーションを実行したいときにその画面に接続できます。
$screen -d -r my_screen
$notepad.exe
$cygstart my_doc.doc