일반

[WSL] Windows Subsystem for Linux - 디스플레이 서버 설정 및 GUI 사용하기

Posted 2018. 11. 12 Updated 2021. 12. 28 Views 32750 Replies 0
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

WSL에는 기본적으로 디스플레이 관련 기능이 포함되어 있지 않아서 GUI 기반 어플리케이션은 사용할 수 없다.

하지만, GUI 관련 기능이 서버-클라이언트 구조로 확실하게 분리되어 구현된 리눅스의 특성상(GUI가 필수적인 Windows와는 달리, 리눅스에서는 GUI가 그야말로 '옵션'이다.) 필요시 X11과 같은 디스플레이 서버를 설치해서 "X over SSH"기법으로 Windows 화면에 GUI 어플리케이션을 띄워서 사용할 수 있다.

 

Xming 설치

https://sourceforge.net/projects/xming/ 에서 Xming 서버를 다운받아 Windows에 설치한다.

설치를 완료하고 Xming을 실행했을 때 시스템 트레이에 다음과 같이 아이콘이 표시됨을 확인한다. (별도의 추가 설정은 필요 없다.)

xming task bar.png

시작 프로그램 폴더(시작 → 실행 → "shell:startup")에 Xming 단축 아이콘을 위치시켜 Windows 부팅시 자동으로 실행되도록 한다.

 

Machine ID 생성

WSL 셸에서 다음 명령으로 ''/etc/machine-id'' 파일을 생성한다.

sudo systemd-machine-id-setup
sudo dbus-uuidgen --ensure

다음 명령으로 GUID가 올바르게 생성되었는지 확인한다.

cat /etc/machine-id

 

X-Window 구성 요소 설치

WSL 셸에서 다음 명령으로 X-Window 패키지와 구성 요소들을 설치한다.

sudo apt-get install x11-apps xfonts-base xfonts-100dpi xfonts-75dpi xfonts-cyrillic

 

기본 디스플레이 포트 설정

GUI 어플리케이션이 실행될 때 그래픽을 출력할 수 있도록 ~/.bashrc에 디스플레이 환경 변수(DISPLAY)를 다음과 같이 설정한다.

export DISPLAY=:0

WSL 셸을 종료하고 다시 실행하거나, "source ~/.bashrc"명령을 실행해서 변경된 환경 변수를 적용한다.

 

디스플레이 동작 시험

디스플레이 설정이 올바르게 되었는지 확인하기 위해 WSL 셸에서 다음 명령을 실행해본다.

xeyes

다음과 같이 웬 눈 달린 창(?)이 뜨면서 마우스를 움직일 때마다 눈알이 따라다니면 디스플레이 관련 설정이 제대로 된 것이다. 이제 필요한 GUI 기반 어플리케이션을 설치해서 사용하면 된다.

xeyes.png