WSL2 X11 프로그램이 "사라집니다"

WSL2 X11 프로그램이 "사라집니다"

저는 Mac에서 방금 전환한 Windows 10의 WSL2에 매우 만족합니다. 난 달린다X410Windows 호스트에서 설정하여 WSL 내에서 X11 앱을 시작합니다.

export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }'):0.0

내 프로그램을 시작하기 전에.

잠시 동안은 잘 작동하지만 컴퓨터가 절전 모드에서 깨어난 후 X 창이 사라졌습니다. 응용프로그램은 여전히 ​​에서 실행 중인 것으로 표시됩니다 ps.

X11 앱과 X410 서버 사이의 네트워크 연결이 끊어지는 것과 관련이 있는 것 같지만 확실하지 않습니다. 누구든지 이것을 경험하고 해결 방법을 생각해 본 적이 있습니까?

저는 Windows 10 Insider Preview 빌드 18945를 사용하고 있습니다.

답변1

맞습니다. 네트워킹에 문제가 있는 것입니다. 분명히 Hyper-V에 대한 모든 X11 연결에 영향을 미칩니다. 해결책은 X11 연결에 TCP/IP가 아닌 다른 것을 사용하는 것입니다.

Windows X11 서버 x410의 개발자가 가상 ​​소켓을 사용하여 Hyper-V VM에 대해 문제를 해결하는 방법을 설명했습니다.여기.

불행하게도 그는 마지막 부분에 대해서도 설명합니다.이 더 광범위한 기사그는 WSL2에서 이 작업을 수행할 수 없었습니다. 그는 Unix 도메인 소켓을 통해 OS 간 통신이 향상될 때까지 WSL2가 성숙해질 때까지 기다릴 것입니다.

답변2

당신이 사용할 수있는엑스프라또는엑스투고해결 방법으로 (저에게는 X2Go가 더 잘 작동합니다).

엑스프라

  1. Linux 배포판( apt install xpraUbuntu)에 Xpra를 설치합니다.
  2. Windows에 Xpra를 설치합니다(설치 프로그램은 다음 위치에 있습니다).Xpra 클라이언트 다운로드)
  3. 다음을 사용하여 Linux에서 xpra를 실행합니다.xpra start --bind-tcp=0.0.0.0:10000 :10000
  4. Windows에서 실행 Xpra.exe하고 포트에 연결합니다 10000.

클라이언트는 절전/대기 모드 후에 자동으로 다시 연결됩니다. 연결이 끊어지더라도(VPN에 로그인할 때) 언제든지 수동으로 다시 연결할 수 있습니다.

엑스투고

  1. Linux 배포판( apt install x2goserverUbuntu)에 X2Go를 설치합니다.
  2. Windows에 X2Go 클라이언트를 설치합니다(설치 프로그램은 다음 위치에 있습니다).X2Go 클라이언트 다운로드)
  3. Linux에서 sshd를 수정하고 시작합니다.
    sudo apt-get remove --purge openssh-server
    sudo apt-get install openssh-server
    sudo service ssh --full-restart
    
    또한 WSL을 다시 시작할 때마다 sshd를 시작해야 합니다 sudo service ssh start.
  4. Windows에서 클라이언트를 실행하고 "세션 유형: 게시된 애플리케이션"을 사용하여 연결합니다.

추신: 저는 현재 작은 블로그 게시물을 작성 중입니다.WSL2의 개발 환경

답변3

이에 대한 아주 좋은 해결책이 있습니다:https://github.com/nbdd0121/wsld.

WSL 데몬 - WSL2에 대한 안정적인 X11 연결 및 시간 동기화

이는 다른 솔루션 중 하나가 수행하지 못하는 작업, 즉 Unix 도메인 소켓을 사용하는 작업을 정확하게 수행합니다. 나는 문제없이 여러 달 동안 그것을 사용하고 있습니다.

관련 정보