Skip to content
TUWLAB.com
모든 게시물에 대하여 '링크'
방식의 퍼가기만 허용합니다.
한양대학교 전자통신컴퓨터공학부
바라미
  • 151
  • 2594106
DNS Powered by DNSEver.com
일반

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

Posted 2018. 11. 12 Updated 2021. 12. 28 Views 33292 Replies 0
Atachment
첨부

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

 

서비스 선택
이용중인 SNS 버튼을 클릭하여 로그인 해주세요.
SNS 계정을 통해 로그인하면 회원가입 없이 댓글을 남길 수 있습니다.
댓글
?
Powered by SocialXE

List of Articles
번호 분류 제목 글쓴이 최근 수정일 조회 수
97 일반 [GIT] Commit하고 원격 저장소로 내보내기: add, reset, commit, push TUW 2018.01.18 27557
96 일반 [GIT] GIT이란 무엇인가, GIT에 대하여 file TUW 2017.06.02 27732
95 일반 [GIT] Patch 만들기 및 적용하기: format-patch, am TUW 2015.01.10 41166
94 일반 [GIT] Submodule (Nested Repository) 사용하기 file TUW 2020.08.28 10941
93 일반 [GIT] 기본 환경 설정 및 작업 시작하기: config, clone, init, pull, fetch, remote TUW 2019.01.30 12857
92 일반 [GIT] 로컬 저장소 정보 조회하기: status, show, log, diff, blame file TUW 2017.06.02 7240
91 일반 [GIT] 병합하고 Commit 재정렬하기: cherry-pick, rebase, merge file TUW 2017.06.02 32271
90 일반 [GIT] 실행취소와 Commit 삭제: reflog, reset, checkout, revert TUW 2019.04.28 64646
89 일반 [GIT] 임시 저장소 사용하기: stash TUW 2015.11.27 4775
88 일반 [HTML] 페이지 자동 이동 - Redirect TUW 2014.03.19 23854
87 Linux [Linux] fdisk 활용 외: 파티션 생성, 배드블록 검사, 파일시스템 생성 TUW 2015.04.24 8251
86 Linux [Linux] Screen 터미널 에뮬레이션 프로그램 사용하기 TUW 2015.08.19 3046
85 Linux [Linux] Sudo 명령의 Secure Path TUW 2015.04.24 8147
84 일반 [Make 튜토리얼] Makefile 예제와 작성 방법 및 기본 패턴 2 file TUW 2018.11.21 236835
83 AVR [MP3 Project] MP3 코딩중 file TUW 2021.12.28 7629
82 AVR [MP3 Project] 산 넘어 산이라더니... TUW 2014.04.16 7091
목록
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 ... 13 Next
/ 13

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5