WSL 설치 가이드

Dingool95·2022년 1월 15일
0
post-custom-banner

들어가기

윈도우와 리눅스 운영체제를 한 컴퓨터에서 사용하는 방법이 여러가지가 있다.

1. 가상 머신
2. 멀티 부팅
3. WSL (Windows Subsystem for Linux)

윈도우 환경에서 리눅스 커널을 활용할 수 있는 WSL이라는 것을 세팅해보겠다.
윈도우에서 자체적으로 제공하고 있는 기능이다.

공식 문서가 가장 정확하지만 나같은 컴맹에겐 두려운 존재임.
아래 영상을 참고하면 좋다.


설치

1. Windows 기능 켜기/끄기

윈도우 검색 상자에서 Windows 기능 켜기/끄기를 검색 또는
제어판 > 프로그램 > 프로그램 및 기능 > Windows 기능 켜기/끄기

표시해놓은 두가지 기능을 체크한 뒤에 윈도우를 다시 시작하면 기능이 활성화 된다.



2. 리눅스 설치

윈도우 검색 상자를 통해 Microsoft Store에 가서 원하는 버전의 리눅스를 설치해준다.
최신 버전 Ubuntu 20.04 LTS를 설치했다. 그리고 Windows Terminal도 설치 해주자.
기본 내장앱인 Windows PowerShell을 써도 되는거 같은데, Terminal이 명령어가 더 많다나 뭐라나. 암튼 터미널도 깔아주자.

Windows 10 pro 버전은 로그인 하지 않고도 Store에서 앱 설치가 가능한듯 하지만, Home 버전에서는 Microsoft 로그인이 필요하다. (정품 인증과는 무관함)

혹시 설치 버튼을 눌러도 아무런 반응이 없거나, 설치 도중 오류가 발생한다면
Windows 업데이트에 가서 업데이트를 확인을 눌러서 업데이트 상태를 확인하기 바란다.

설치된 Ubuntu 20.04 LTS를 실행하면 아래와 같이 설치가 진행된다.

설치 되고 username, password 입력해주면 완료.

완료되면 다음 명령어로 설치된 WSL의 버전을 확인할 수 있다.

wsl -l -v


*표시로 Ubuntu-20.04 버전이 활성화 되어 있는 것을 볼 수 있는데, 여러 버전을 받을 수 있다.



3. WSL 1에서 WSL 2로 버전 업그레이드

WSL 1 에서 발전된 형태인 WSL 2로 업그레이드 해야한다. 이걸 해주지 않으면 나중에 QGroundControl을 실행했을 때 문제가 발생한다.

터미널 창을 관리자 권한으로 실행하고
다음 명령어들을 순차적으로 실행하면 업그레이드가 완료된다.

wsl --shutdown
wsl -l -v
wsl --update
wsl --shutdown
wsl --set-version Ubuntu-20.04 2
wsl -l -v

우선 wsl --shutdown명령어로 WSL을 종료해주고 wsl -l -v 명령어를 통해 STATERunning에서 Stopped로 바뀐 것을 확인할 수 있다. 그리고 wsl --update로 리눅스 커널을 업데이트 해준다.

여기서 업데이트가 정상적으로 실행되지 않는다면, Store에서 리눅스 배포판을 설치할 때와 같이 Windows 업데이트를 확인해보자. 또는 터미널을 관리자 권한으로 실행했는지 확인하자.

커널 업데이트가 완료되면 다시 wsl --shutdown 해주고
wsl --set-version Ubuntu-20.04 2 명령을 실행하면 버전 업그레이드가 완료된다.

이 때, 리눅스 커널 업데이트를 해주지 않았다면 WSL2에 커널 구성 요소 업데이트가 필요합니다. 라는 안내문이 뜨면서 버전이 바뀌지 않는다. 그리고 우분투 버전 이름은 wsl -l -v명령어를 실행했을 때 나오는 NAME과 정확히 동일하게 써줘야 한다.

버전 업그레이드가 완료되면 WSL로 리눅스 쉘을 열어서 다음 두 줄을 실행해주자.

sudo apt update
sudo apt upgrade




4. GUI 사용을 위한 세팅

WSL에서 GUI 프로그램을 실행하려면 별도의 X server(?) 라는게 필요하단다. Windows 11 버전부터는 WSLg라는 것을 사용해서 별도의 설치 없이 GUI를 사용할 수 있다는데, OS 빌드 버전이 높으면 Windows 10에서도 되는것 같기도 하다.

내 환경은 Windows 10 Home 버전이고, OS 빌드 버전도 낮으므로 X server를 설치하는 것을 택했다.

우선 아래 사이트에서 VcXsrv Windows X Server 라는 것을 설치해주자.
뭔가 바이러스일 수도 있을 것 같아서 처음에 받기 꺼려졌는데, 전혀 문제 없는 프로그램이다.

설치하고 실행해서 아래와 같이 설정을 해주자.
(처음에 실행하면 방화벽이 막는다. 무시하고 실행하면 된다.)



WSLg가 아니라서 GUI를 사용하려면 매번 X server를 실행해줘야 한다. 그 실행 파일을 저장하는 것이 저 빨간 박스이다.

계속해서 방화벽 문제가 뜬다면 아래를 참고하자.

X server가 실행되었으면 WSL을 실행하고 아래 두 명령어를 실행하자.

echo "export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0" >> ~/.bashrc
echo "export LIBGL_ALWAYS_INDIRECT=0" >> ~/.bashrc

.bashrc 파일에 echo명령어를 통해 " "로 감싸진 내용을 넣어준다.

GUI 환경이 세팅되기 전이라서 외부에서 복사된 문장을 파일에 붙여넣기 할 수 없다.
그런데 오타 발생 확률이 매우 높은 문장을 써줘야 한다. 이 때,echo 명령어를 활용하면 GUI 환경이 아니더라도 명령창을 통해 붙여넣기를 활용할 수 있다.

이제 WSL을 껐다가 켜주면 GUI 프로그램이 정상 동작한다. gedit 에디터로 확인해보자.

sudo apt-get install gedit
gedit
profile
내 맘대로 요점정리
post-custom-banner

0개의 댓글