[WSL] WSL 설치하기

목차

  1. 조금 긴 WSL2 개요와 필자의 소회
  2. WSL 설치
  3. WSL 진입 및 진출 명령
  4. 설치한 Linux의 버전 알아보기
  5. WSL 실행 시 Zombie Process가 있다고 나타나는 경우

WSL1과 WSL2에는 다소 차이점이 존재한다. 본 블로그의 글들 대부분에서는 WSL2을 기반으로 설명하고 있다.



WSL 설치의 공식 문서

이 글은 2021년 2월~5월 기준으로 작성하고 있으며, 2021년 5월에 퇴고작업을 마쳤다. 그러므로, 기간이 오래 지나면 본 글과 다른 방식으로 설치 과정이 변경되었을 수 있으므로, 시간이 지나 이 글의 효력이 없어지는 경우 새로이 정보를 찾아보실 수 있도록 공식 사이트 위주로 작성하려 노력하였다.

WSL 설치의 공식 문서는 Microsoft에서 제공하는 Windows 10에 Linux용 Windows 하위 시스템 설치 가이드를 따라하면 된다. 위 문서가 항상 공식문서이며 회신 버전의 내용을 담고 있을 가능성이 높으므로, 아래 내용 중 잘 되지 않는 부분이 있다면 해당 링크를 참고하시기 바란다.

본 글의 내용은 참고만 하고, 모든 WSL 관련 기술문서는 Microsoft 공식 문서를 직접 확인하자.


WSL 설치

  1. 먼저 Windows10 실행란에 ‘winver’라고 입력하여 윈도우 버전을 확인하자.

Windows Version 확인

(1) WSL2는 Windows10에서만 실행되며, 아래 업데이트 이상을 보유하고 있어야만 사용할 수 있다.

  • x64 시스템의 경우: 버전 1903 이상, 빌드 18362 이상
  • ARM64 시스템의 경우: 버전 2004 이상, 빌드 19041 이상

(2) winver로 확인한 업데이트가 위 업데이트보다 낮다면, 먼저 윈도우 업데이트부터 진행하자.

Windows Version 확인

  1. Terminal 설치
    (1) WSL을 사용하기 위해서는 새로운 버전의 Windows Terminal을 설치해야 한다.

Windows Store 실행

(2) Windows Store에서 “Windows Terminal”을 검색하고, 설치한다.

Windows Terminal 다운로드

  1. WSL 설치

(1) 관리자 권한으로 Terminal을 실행해야 하며, Power Shell에서 실행해야 한다.

Windows Terminal을 관리자 권한으로 실행

(2) 관리자 권한으로 실행된 PowerShell에서 아래 두 줄을 차례대로 실행한다.

1
2
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

(3) 실행한 결과는 대충 아래와 같이 표시되면 된다.

Windows Terminal에서 실행 결과

  1. WSL 설치가 완료되면 Windows를 다시 시작하기 하여 시스템을 재-시작해야 한다.

Windows 다시 시작

  1. Windows10용 Linux Kernel Update Package를 설치한다.

Windows 10에 Linux용 Windows 하위 시스템 설치 가이드로 가서 Linux Kernel Update Package를 다운로드 후 설치하자.

Linux Kernel 지원 패키지 설치

  1. Ubuntu 설치 및 실행

(1) 다시 Windows Store로 가서 “Ubuntu”를 검색한다. 검색 결과는 여러개가 표시될 수 있는데, 버전이 붙지 않은 앱을 선택하자. (사실 아무거나 선택해도 상관 없지만, WSL 사용에 익숙해 질 때까지는 버전이 붙은 앱은 일단 무시하자.)

Windows Store에서 Ubuntu 검색

(2) Ubuntu를 다운로드하고 실행하자.

Ubuntu를 다운로드 후 실행

  1. Ubuntu 초기 설정

(1) Ubuntu 앱을 최초 실행 시 아래와 같이 계정 이름과 암호를 설정하라고 표시된다.

Ubuntu 최초 실행

(2) 계정과 암호를 설정한 후, Ubuntu의 Bash Shell이 실행되면 제일 처음 할 일은 아래의 내용이다.

1
sudo apt update && sudo apt upgrade && sudo apt dist-upgrade

Ubuntu 시스템 업데이트 명령을 실행하여 시스템 업데이트가 종료될때까지 기다린다. (시스템을 다시 시작하지는 않아도 된다.)

  1. Ubuntu 앱에서 빠져 나오고, WSL로 진입하기

(1) 시스템 업데이트가 완료되면 ‘exit’를 입력 해서 Ubuntu 앱에서 빠져나온다.

1
exit

(2) Windows Terminal을 실행 한 후 ‘wsl’ 이라고 입력한다.

(3) Bash shell 상태에서 ‘exit’를 입력해서 wsl에서 빠져나온다.

(4) 이후 PowerShell 상태에서 ‘wsl -l’ 그리고 ‘wsl -l -v’를 입력한다.

WSL List and Verbose

필자와 동일한 List가 출력되지는 않을 것이다. 필자는 필요에 의해 WSL1과 WSL2를 동시에 사용하고 있고, 이미 Docker도 설치했기 때문에 위와 같이 출력된다.


WSL 진입 및 진출 명령

WSL로 진입하는 명령은 PowerShell 상태에서 wsl을 입력하는 것이고, wsl에서 나오는 방법은 Bash Shell 상태에서 exit을 입력하면 된다.

1
2
wsl
exit

설치한 Linux의 버전 알아보기

설치한 리눅스의 버전을 알아 보는 방법은 아래와 같다. WSL을 실행한 후 Bash에서 아래와 같이 입력하면 현재 실행 중인 WSL Linux의 버전을 확인할 수 있다.

1
lsb_release -a

아래는 2021년 4월 17일 기준, 이 글의 퇴고 작업을 진행하며 실제로 실행해본 필자의 WSL 버전이다.

WSL Linux 버전 보기

※참고 : Ubuntu를 사용한다면 시스템 켜고 항상 업데이트 현황을 잘 보자. apt update를 생활화하자.


WSL 실행 시 Zombie Process가 있다고 나타나는 경우

WSL 실행 시 아래와 같이 Zombie Process가 있다고 나타나는 경우가 있다.

이런 경우 아래의 명령어를 입력하여 Zombie Process들을 죽일 수 있다. 필자는 아예 runKillZombieProcess.sh 파일을 실행 가능하게 만들어서 저장해 버렸다.

1
sudo kill -HUP $(ps -A -ostat, ppid | grep -e '[zZ]' | awk '{ print #2 }')

Zombie Process에 대해서는 굳이 이 포스팅에서 다루어야할 내용이 아니므로 인터넷 검색을 활용하자.


참고 자료