저는 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가 더 잘 작동합니다).
엑스프라
- Linux 배포판(
apt install xpra
Ubuntu)에 Xpra를 설치합니다. - Windows에 Xpra를 설치합니다(설치 프로그램은 다음 위치에 있습니다).Xpra 클라이언트 다운로드)
- 다음을 사용하여 Linux에서 xpra를 실행합니다.
xpra start --bind-tcp=0.0.0.0:10000 :10000
- Windows에서 실행
Xpra.exe
하고 포트에 연결합니다10000
.
클라이언트는 절전/대기 모드 후에 자동으로 다시 연결됩니다. 연결이 끊어지더라도(VPN에 로그인할 때) 언제든지 수동으로 다시 연결할 수 있습니다.
엑스투고
- Linux 배포판(
apt install x2goserver
Ubuntu)에 X2Go를 설치합니다. - Windows에 X2Go 클라이언트를 설치합니다(설치 프로그램은 다음 위치에 있습니다).X2Go 클라이언트 다운로드)
- Linux에서 sshd를 수정하고 시작합니다.
또한 WSL을 다시 시작할 때마다 sshd를 시작해야 합니다sudo apt-get remove --purge openssh-server sudo apt-get install openssh-server sudo service ssh --full-restart
sudo service ssh start
. - Windows에서 클라이언트를 실행하고 "세션 유형: 게시된 애플리케이션"을 사용하여 연결합니다.
추신: 저는 현재 작은 블로그 게시물을 작성 중입니다.WSL2의 개발 환경
답변3
이에 대한 아주 좋은 해결책이 있습니다:https://github.com/nbdd0121/wsld.
WSL 데몬 - WSL2에 대한 안정적인 X11 연결 및 시간 동기화
이는 다른 솔루션 중 하나가 수행하지 못하는 작업, 즉 Unix 도메인 소켓을 사용하는 작업을 정확하게 수행합니다. 나는 문제없이 여러 달 동안 그것을 사용하고 있습니다.