私のCygwin X 64ビットはWindows 7で正しく動作します。 Windows 10にアップグレードしましたが、すべてが停止しました。
だからCygwinをアンインストールし、最初から再インストールしました。 Cygwin X 1.18.4(x86_64)がインストールされています。を使用してXサーバーを起動しますstartxwin
。 xtermを設定したときにのみ機能させることができますDISPLAY=:0
。
私が設定DISPLAY=localhost:0
したらcan't open display
。
また、他のコンピュータをxtermに再びCygwin Xにインポートすることはできません。同じエラーが発生します。 Linuxホストにxtermを投げてみましたが、同じエラーが発生しました。 Windowsファイアウォールがオフになっており、xhost +
すべてのホストに設定されています。
localhostまたはコンピュータのローカルIPを明示的に設定できない理由についてのDISPLAY
提案はありますか?
ありがとう
答え1
上記のように
https://sourceware.org/ml/cygwin-announce/2015-10/msg00111.html
"-nolisten tcp"が既定値になっているため、サーバーはUnixドメインソケットのローカル接続のみを許可します。以前の動作を復元するために使用できる「-listen」オプションが追加されました。
答え2
「-nolisten tcp」オプションの選択を解除して実行する方法は次のとおりです。自動サーバー:
<path-to-cygwin>\bin\run.exe -p /usr/X11R6/bin XWin -listen tcp -multiwindow -clipboard -silent-dup-error
答え3
ssh -Y host
オプションを使用する方が良いようです。https://x.cygwin.com/docs/faq/cygwin-x-faq.html#q-ssh-no-x11forwarding
答え4
私のDISPLAYは「:0.0」に設定されており、うまく動作します。試行錯誤を経てこの設定を得ましたが、CYGWIN/X FAQには次のように記載されています。
3.13. I upgraded and now X clients can't connect
A1:
Since X server 1.17, by default the server does not listen for TCP/IP
connections, only accepting local connections on a unix domain socket.
For local clients, use DISPLAY=:0.0, rather than DISPLAY=localhost:0.0,
DISPLAY=127.0.0.1:0.0, DISPLAY=::1:0.0, etc. See Q: 1.6..
A2:
For remote clients, rather than connecting over TCP/IP by explicitly
setting DISPLAY and allowing access using xhost or by disabling access
control, use ssh tunnelling with ssh -Y instead. (See the User's Guide
section on X forwarding using ssh for more details).
A3:
Use the -listen tcp option to restore the previous behaviour, allowing
the X server to open a TCP/IP socket as well e.g. startxwin -- -listen
tcp. See Q: 4.2..
CYGWIN/X FAQ URL https://x.cygwin.com/docs/faq/cygwin-x-faq.html