[WSL2] 윈도우에서 linux 사용 (WSL 2), xwindows GUI 설정

계산과학 분야의 많은 프로그램들은 linux (서버) 환경에서 사용하도록 만들어져 있습니다.

맥이나 윈도우에서 사용 가능한 것들도 있지만, 아무래도 대규모 계산은 고성능 서버 (혹은 클러스터)에서 진행하는 것이 일반적이고, 이런 서버들은 주로 linux 운영체제를 사용합니다. 

 가벼운 연산의 경우는 PC나 워크스테이션 한대로도 어느 정도 할 수도 있고, 특히 CUDA 같은 GPU 컴퓨팅이 등장하면서 개인용 컴퓨터로도 (딥러닝 같은) 고성능의 연산이 가능해졌지만, 이런 작업에서도 여전히 linux를 많이 사용합니다. 

 

Microsoft에서 Windows Subsystem for Linux (WSL) 이라는 것을 제공합니다. 

말 그대로, 윈도우에서 리눅스를 서브시스템으로 사용할 수 있게 하는 것입니다. 

윈도우 10 부터 지원하긴 하지만, 요즘 주로 사용하는 윈도우라면 대부분 해당될 것입니다. 

예전에도 가상머신을 사용해서 윈도우에서 리눅스를 부팅하는 방법이 있었지만, 상당히 느리고 불편한 점이 많았습니다.

 WSL은 이전의 가성머신에 비해 속도가 빠르고, 그냥 리눅스로 부팅하는 것과 별로 다르지 않습니다.

 WSL2 는 좀 더 호환성이 좋아졌습니다. 

 사용자 입장에서 Linux와 WSL의 차이라고 한다면, linux를 직접 설치하면 보통 xwindows GUI 모드를 사용하지만, WSL은 기본적으로 리눅스 터미널만을 사용합니다. 그래도 GUI를 지원하는 프로그램들은 (gnuplot 등) GUI를 사용할 수 있습니다. 

 

WSL을 설치하는 방법은 여러가지가 있지만, 저는 다음과 같은 방법을 주로 사용합니다. 

 

 

윈도우 바탕화면 우클릭 -> 개인설정-> 검색메뉴: windows 기능 켜기/끄기 선택

-> Linux용 windows 하위 시스템 선택 -> 확인

을 선택하면 WSL 설치가 진행되고 재부팅됩니다. 

그럼 다음에는 실제로 사용할 리눅스를 선택합니다. 윈도우 스토어에서 선택할 수 있습니다. 

 

 

Microsoft Store -> ubuntu22.04 검색 ->다운로드

 저는 ubuntu 22.04 LTE 버전을 선택했지만, 다른 ubuntu 버전도 있고, debian이나 SUSE 같은 다른 종류의 리눅스들도 설치할 수 있습니다. 

 

 

다운로드가 끝나고 열기 버튼을 누르면 실행됩니다. 최초 실행시 설정이 진행됩니다. 

 

 

최초 실행시 username과 password를 입력받습니다. 

아이콘을 작업표시줄에 고정하면 편하게 실행할 수 있습니다. 

 

기본적으로 WSL 1로 설치되는데, WSL 2로 변경하고 싶다면 다음과 같이 진행합니다. 

 

 

windows PowerShell 를 관리자 권한으로 실행합니다. 
wsl --list --verbose 를 입력하면 현재 설치된 리눅스 버전을 확인할 수 있습니다. 
wsl --set-version Ubuntu-22.04 2
를 입력하면 WSL 버전 2로 변경됩니다. 

다시 wsl --list --verbose를 입력해서 변환이 제대로 되었는지 확인합니다.

 

다음 명령어를 사용하여 리눅스 패키지들을 최신 버전으로 업데이트합니다. 

 

$ sudo vi /etc/apt/sources.list
:%s/archive.ubuntu.com/ftp.daum.net/g
:wq
$ sudo apt update
$ sudo apt upgrade

 sudo 는 관리자 권한으로 실행하라는 명령어입니다.  apt 는 패키지 관리자 명령어입니다.

apt update 는 패키지 목록 업데이트, apt upgrade는 패키지 최신 버전 업데이트입니다. 

패키지 목록은 저장소에서 가져오는데, 저장소 서버는 여러 개가 있습니다. 기본적으로 설정된 저장소 서버는 좀 느린 편이라, 한국에 있는 서버로 지정하는 편이 빠릅니다.

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

/etc/apt/sources.list 파일에 저장소 주소들이 저장되어있습니다. 

vi 에디터로 이 파일을 열어서 저장소 주소들을 일괄 변환할 수 있습니다.  

vi 에디터에서 :%s 명령어를 사용하면, 문자열을 치환할 수 있습니다.

:wq 는 저장하고 종료하라는 명령어입니다. 

 

다음은 xwindows (GUI) 설정입니다.

리눅스에서도 gui가 필요한 경우는 많이 있습니다.

pymol 같은 GUI 프로그램을 사용하거나, gnuplot,  python의 matplotlib 등을 사용해서 그래프를 출력해보거나, 이미지 뷰어로 그림 파일을 열어볼 수도 있습니다. 

그런데, WSL만 설치해선 이런 GUI 프로그램의 출력이 화면으로 제대로 전달되지 않습니다. 

그래서 GUI 출력을 전달해주는 별도의 프로그램이 필요합니다. 

 

일단 .bashrc 파일에 다음 내용을 입력합니다. WSL2 기준

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

WSL 버전에 따라서 이 부분이 조금 다릅니다. 

WSL 버전 1에선

export DISPLAY=localhost:0.0

를 입력합니다. 

 

윈도우에서 linux 의 xwindows (GUI)를 사용하기 위해선 xming이라는 프로그램이 필요합니다. 

설치 및 설정 방법은 다음과 같습니다. 

https://sourceforge.net/projects/xming/

에서 xming 다운로드 및 설치

탐색기에서

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Xming  입력 ->

xming 우클릭 ->속성 클릭 -> 대상에 다음 항목 입력

"C:\Program Files (x86)\Xming\Xming.exe" :0 -clipboard -multiwindow -ac

이 부분은 WSL2에서만 적어주면 되고, WSL1일 경우는 Xming 아이콘의 속성을 변경하지 않습니다. 

xming 을 실행합니다. 

xwindows가 정상적으로 출력되는지 확인합니다.

bash에서

$ sudo apt install gnuplot
$ gnuplot
gnuplot> plot x

라고 입력합니다. 

 

 

우측 그림이 뜬다면 정상적으로 설치된 것입니다.

gnuplot> exit 를 입력하여 gnuplot을 종료합니다.

 

[출처] https://novelism.co.kr/m/273

 

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
28 [Linux programming][turbo c] The libXbgi Library file 졸리운_곰 2023.02.05 248
27 [unix][linux][compiler] Yacc와 Lex 시작하기 file 졸리운_곰 2021.09.08 261
26 [Visual Studio 2019] Visual Studio로 Linux 원격 개발하기(Ubuntu 설치부터 SSH 서버접속까지) file 졸리운_곰 2021.08.29 235
25 [unix][emacs] 이맥스와 함께하는 개발환경 . emacs 튜토리얼 file 졸리운_곰 2021.08.18 319
24 [Linux][C/C++] cmake 사용법과 활용 file 졸리운_곰 2020.11.08 552
23 [CMake] Linux C/C++ cmake 시작하기 졸리운_곰 2020.11.08 398
22 [C++] CMake Build System file 졸리운_곰 2020.11.08 328
21 Windows 10에 한국어 입출력이 가능한 리눅스 데스크톱 설치하기 file 졸리운_곰 2020.06.29 289
20 wxwidgets 과 codeblock 설치(리눅스) 졸리운_곰 2019.12.25 228
19 ubuntu 18.04.2 LTS 개발환경 세팅 졸리운_곰 2019.12.25 223
18 Ubuntu 16.04 개발환경 세팅하기! 졸리운_곰 2017.03.21 356
17 tcl/tk 자료 secret 졸리운_곰 2017.02.23 0
16 CentOS xrdp 설정 (원격데스크탑) 졸리운_곰 2017.02.01 453
15 Five lightweight Linux desktop worlds for extreme open-sourcers file 졸리운_곰 2016.05.12 1022
14 Logging every shell command 졸리운_곰 2016.05.11 581
13 How to keep a detailed audit trail of what’s being done on your Linux systems file 졸리운_곰 2016.05.11 467
12 Docker의 소개와 간단한 사용법 file 졸리운_곰 2015.11.24 804
11 Make Self-Extracting Archives with makeself.sh 졸리운_곰 2015.11.07 363
10 리눅스 간단 배포 Linux simple deploy 제작 : make self file 졸리운_곰 2015.11.07 352
9 Joinc: Linux 커널에서의 디바이스 드라이버 작성 졸리운_곰 2015.06.16 833
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED