내 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