devAlice
← Windows

WSLg — Windows에서 Linux GUI 앱 실행하기

WSL2의 GUI 통합 (WSLg)으로 Linux 데스크톱 앱을 Windows 창처럼 띄우는 셋업. 별도 X 서버·VcXsrv 불필요.

예전에는 WSL에서 Linux GUI 앱을 띄우려면 VcXsrv·X410 같은 외부 X 서버를 깔고 DISPLAY 환경변수 맞추고 방화벽 규칙 손봐야 했다. WSLg (WSL GUI) 도입(Windows 11 + WSL 0.65+) 이후 이 모든 셋업이 사라졌다 — Linux 앱이 그냥 Windows 창으로 뜬다.

이 가이드는 Windows 11 22H2+ + WSL 2 + Ubuntu 24.04 기준 WSLg를 활성화하고, 자주 쓰는 Linux GUI 앱(Firefox·gedit·gimp·GUI 디버거)을 띄우는 방법을 정리한다.

TL;DR

  1. wsl --versionWSL version 2.0+·WSLg 1.0+ 둘 다 보이면 사용 가능
  2. wsl --update 로 최신화
  3. sudo apt install -y x11-appsxcalc — 시계 모양 GUI가 Windows 창으로 뜨면 성공
  4. 별도 DISPLAY 설정 불필요 — WSLg가 자동 주입
  5. Wayland 앱은 WAYLAND_DISPLAY 자동, X11 앱은 DISPLAY=:0 자동

사전 조건

  • Windows 11 22H2+ (Windows 10도 21H2+에서 가능하나 안정성·성능은 11이 우월)
  • WSL 2 + Ubuntu 24.04 (다른 배포판도 OK — Debian, Fedora 등)
  • GPU 드라이버 최신 (NVIDIA/AMD/Intel — WSLg는 vGPU 사용)

1. WSLg 동작 원리 (간단히)

[Linux GUI 앱] ──Wayland/X11──> [WSLg 시스템 컴포지터]
                                       │
                                       ▼
                                [Windows RDP]
                                       │
                                       ▼
                              [Windows 데스크톱]
  • Linux 앱은 평범한 Wayland 또는 X11 클라이언트로 동작
  • WSLg가 Weston 컴포지터를 띄우고 RDP로 Windows에 전달
  • Windows 입장에선 앱이 RDP 클라이언트인 셈이라 별도 X 서버 불필요

2. 검증 — 이미 동작하나?

wsl --version
# WSL version: 2.x.x
# WSLg version: 1.x.x  ← 둘 다 보이면 OK

WSLg가 안 보이면 업데이트:

wsl --update
wsl --shutdown

테스트:

# WSL Ubuntu 안에서
sudo apt update && sudo apt install -y x11-apps
xcalc          # 또는 xeyes / xclock

Windows에 GUI 창이 뜨면 성공.

안 뜨면 §8 트러블슈팅 참조.

3. 자주 쓰는 GUI 앱

3.1 Firefox

sudo apt install -y firefox
firefox

WSL Ubuntu의 Firefox로 https 접속·DevTools 사용 가능. 단 macOS의 Safari나 Windows native Firefox에 비해 GPU 가속이 제한적이라 큰 사이트는 약간 느리다.

3.2 텍스트 에디터 (gedit, gnome-text-editor)

sudo apt install -y gnome-text-editor
gnome-text-editor /etc/hosts

빠른 sudo 편집에 유용. nano보다 GUI를 선호하는 경우.

3.3 이미지 편집 (GIMP)

sudo apt install -y gimp
gimp

Photoshop만큼 빠르지는 않지만 Linux 빌드 그대로.

3.4 GUI 디버거 (gdb-gui, ddd)

sudo apt install -y ddd
ddd ./my_program

VS Code Remote-WSL을 쓰면 굳이 ddd는 안 써도 되지만, 고전 GUI 디버거가 필요한 상황에서.

3.5 Wireshark (네트워크 분석)

sudo apt install -y wireshark
sudo wireshark

WSL의 가상 네트워크 인터페이스를 캡처 가능. Windows host의 트래픽을 직접 캡처하려면 별도 설정 필요 (wsl --networkingMode=mirrored — Windows 11 22H2+).


4. Wayland vs X11 — 자동 선택

WSLg는 두 프로토콜을 동시 지원. 환경변수 둘 다 자동 설정:

echo $DISPLAY
# :0
 
echo $WAYLAND_DISPLAY
# wayland-0
  • Wayland 우선 — 최신 GTK/Qt 앱은 자동으로 Wayland 사용 (GDK_BACKEND=wayland 기본)
  • X11 fallback — Wayland 미지원 앱은 DISPLAY=:0으로 X11 사용

특정 앱이 X11/Wayland 중 하나를 강제로 쓰게 하려면:

# X11 강제
GDK_BACKEND=x11 firefox
 
# Wayland 강제
GDK_BACKEND=wayland firefox

5. GPU 가속

WSLg는 vGPU(가상화 GPU)를 통해 OpenGL/Vulkan 가속 지원. CUDA 워크로드도 동작.

확인

sudo apt install -y mesa-utils
glxinfo | grep "OpenGL renderer"
# OpenGL renderer string: D3D12 (NVIDIA GeForce RTX ...) — 호스트 GPU 노출됨

사용 사례

  • Blender·Maya 등 3D 앱
  • 머신러닝 시각화 (TensorBoard·Plotly Dash 등)
  • 게임 (성능 제한적이지만 동작은 함)

CUDA: NVIDIA WSL 드라이버는 Windows 측에서 설치 (https://developer.nvidia.com/cuda/wsl). Linux 안에선 nvidia-cuda-toolkit만 추가 설치.


6. 오디오·마이크·웹캠

WSLg는 PulseAudio도 자동 통합 — 오디오 출력은 Windows 기본 출력으로 라우팅.

sudo apt install -y pavucontrol
speaker-test -c 2     # 양쪽 스피커 테스트

마이크·웹캠은 더 까다로움:

  • 마이크: pavucontrol → Recording 탭에서 Windows 마이크 보임 (보통 OK)
  • 웹캠: WSLg는 USB 카메라 직접 지원 안 함. usbipd-win으로 USB attach 필요

7. Windows 시작 메뉴에 Linux 앱 등록

WSLg는 자동으로 시작 메뉴에 등록함:

Win → "Firefox" 검색 → Firefox (Ubuntu) 항목 → 클릭만 하면 WSL이 자동 시작되고 Firefox가 뜸.

표시되는 앱은 ~/.local/share/applications/*.desktop (Linux) 기반. 직접 .desktop 파일 만들어 커스텀 앱 등록 가능:

cat > ~/.local/share/applications/my-app.desktop <<'EOF'
[Desktop Entry]
Type=Application
Name=My Tool
Exec=/usr/local/bin/mytool
Icon=utilities-terminal
EOF

WSL 재시작 후 시작 메뉴에 반영.


8. 트러블슈팅

xcalc 실행해도 창이 안 뜸

  • wsl --versionWSLg version이 보이는가
  • wsl --update·wsl --shutdown 후 재시도
  • 호스트의 GPU 드라이버 (WSLg 1.0.62+는 mesa software fallback 가능하나 일부 환경에선 GPU 필수)

폰트가 깨짐 (한글 ▢▢▢)

sudo apt install -y fonts-noto-cjk fonts-nanum
fc-cache -fv

클립보드가 동기화 안 됨

WSLg는 텍스트 클립보드 양방향 자동 동기화. 안 되면:

  • 앱이 Wayland인지 X11인지 확인 — Wayland 앱은 가끔 클립보드 누락
  • GDK_BACKEND=x11 로 강제 후 재시도

"GTK theme not found" 같은 경고

sudo apt install -y adwaita-icon-theme

기본 GTK 테마 미설치. 자주 안 보이지만 일부 minimal Ubuntu 이미지에서 발생.

GUI 앱 입력 키 일부가 안 먹힘

Ctrl+Shift 조합·한국어 IME 등이 Windows 측에 우선 잡히는 경우. 해결:

  • Windows IME 비활성화 (Win + Space로 영어 전환)
  • 또는 Linux 측에 ibus/fcitx5 설치하고 한글 입력은 Linux 안에서

앱이 너무 느림 (UI 지연 큼)

  • GPU 가속이 software 폴백된 경우 — glxinfo | grep -i hardware 확인
  • GPU 드라이버 최신화
  • WSL2 메모리 부족 — .wslconfigmemory=8GB 등 명시 (wsl-tuning)

9. 한계

  • Windows 11 / WSL 2 전용 — WSL 1 미지원
  • 시스템 트레이 / 위젯 부재 — Linux 데스크톱의 트레이 아이콘은 표시 안 됨
  • 다중 모니터 동작은 양호하나 fractional scaling 미흡 — 125%·150% 스케일링에서 일부 앱 흐릿
  • 자동 시작 / 백그라운드 데몬 — Linux의 systemd 서비스를 Windows 부팅 시 자동 시작하려면 별도 설정 필요 (systemctl --user + Windows Task Scheduler)

10. 다음 단계


참고

변경 이력

  • 2026-05-16: 첫 작성. WSLg 활성화·자주 쓰는 GUI 앱·GPU 가속·오디오/마이크·시작 메뉴 등록·트러블슈팅 6종.

댓글