WSL2 기능에 대한 심층 분석

Windows와 Linux는 가장 널리 사용되는 두 가지 운영 체제(OS)입니다. Windows는 사용자에게 친숙한 접근 방식을 제공하지만 Linux의 높은 사용자 지정 기능은 개발자, 생산적인 사람 및 학습자에게 최고의 선택입니다.

함께 액세스하려면 Windows 내에서 가상화 또는 이중 부팅이 필요합니다.

그러나 Windows에서 손쉽게 Linux에 액세스할 수 있는 새로운 Windows 기능이 있습니다.

WSL2 만나보기 – Linux용 Windows 하위 시스템이 등장합니다. Windows에서 Linux에 액세스할 수 있는 Windows 기능입니다.

이 문서에서는 WSL2에 중점을 둘 것입니다. 정의, 목적, 설치 프로세스 및 효과적으로 사용하는 방법에 대해 매우 자세하게 다룰 것입니다.

시작하자.

Linux용 Windows 하위 시스템이란 무엇입니까?

Linux용 Windows 하위 시스템을 사용하면 Windows 터미널에서 직접 GNU/Linux 환경에 액세스할 수 있으므로 이중 부팅이나 가상화 도구를 사용할 필요가 없습니다. 이를 통해 Linux 커널에 액세스할 수 있습니다. 즉, 명령줄 도구, 응용 프로그램 및 유틸리티를 포함하여 Windows에서 직접 Linux 기능을 사용할 수 있습니다.

WSL 2는 WSL1(Windows 10과 함께 출시)보다 더 나은 기능과 속도를 제공하는 최신 Windows 하위 시스템입니다. 또한 대부분의 Windows 설치에는 WSL이 미리 설치되어 있습니다. 사용하려면 활성화해야 합니다.

내부적으로 WSL2는 Window의 Hyper-V 가상 머신 기술을 사용합니다. 따라서 WSL2 Linux와 호환되므로 WSL1보다 실행 속도가 거의 20배 더 빠릅니다.

즉, WSL2는 Linux용 최신 Windows 하위 시스템으로, 귀하와 같은 Windows 사용자에게 Linux 커널에 대한 직접 액세스를 제공합니다.

WSL2 시작하기

튜토리얼 전체에서 우리는 또한 Windows에서 터미널로 작업할 수 있는 편리하지만 권장되는 옵션인 Windows 터미널을 사용할 것입니다. 명령줄 도구 및 WSL로 작업하려는 사용자를 위한 현대적이고 빠르고 효율적인 터미널입니다.

PC 요구 사항

모든 PC에서 WSL2를 실행할 수 있는 것은 아닙니다. WSL2를 실행하려면 시스템이 가상화를 지원해야 합니다. WSL2는 내부적으로 Hyper-V를 사용하기 때문입니다.

또한 SLAT(Second Level Address Translation)를 지원하는 64비트 CPU를 사용해야 합니다. 거의 모든 최신 CPU가 이를 지원합니다.

디스크 공간은 최소 1GB의 여유 공간이 필요합니다.

BIOS에서 가상화 활성화

하드웨어 요구 사항을 충족하는 경우 마더보드의 BIOS에서 활성화해야 합니다.

F2, Del 또는 F10과 같은 키보드 키를 눌러 BIOS로 들어갑니다.

BIOS에서 AMD의 SVM(Secure Virtual Machines)/Intel의 가상화 기술 VTx를 찾아서 활성화해야 합니다. 완료되면 머신을 재부팅합니다.

더 자세한 설명이 필요한 경우 다른 게시물인 Hyper-V를 사용하여 Windows 10에 Ubuntu를 설치하는 방법에서 자세한 지침을 확인하십시오.

WSL2용 Windows 기능 활성화

하드웨어 요구 사항이 충족되었으므로 이제 Windows에서 WSL2를 활성화할 차례입니다.

첫 번째 단계는 Windows 버전을 확인하는 것입니다. 이렇게 하면 Windows가 WSL을 지원하는지 여부를 알 수 있습니다.

  2022년에 ServSafe Manager 인증을 받는 방법

이렇게 하려면 키보드에서 CMD + R을 누르고 “winver”를 입력합니다. Windows 버전이 표시됩니다.

Windows 10을 사용하고 있다면 아마도 WSL1을 사용하고 있을 것입니다. 그러나 대부분의 Windows 11 사용자에게는 WSL2입니다.

Windows S를 제외한 모든 Windows 10 및 11 버전은 보안을 목표로 하고 가상화가 비활성화되어 있으므로 WSL2를 지원합니다.

Windows S를 사용 중인 경우 Windows Home 또는 Pro와 같은 다른 버전으로 변경해야 합니다.

이렇게 하려면 설정 > 업데이트 및 보안 > 활성화로 이동하여 OS를 변경하십시오.

또한 최신 Windows 업데이트가 설치되어 있어야 합니다. WSL2에 대한 완벽한 호환성과 지원을 보장합니다. 시스템을 업데이트하려면 설정 > Windows 업데이트로 이동하십시오.

WSL2를 사용하려면 여러 Windows 기능을 활성화해야 합니다.

제어판 > 프로그램 및 기능으로 이동합니다. 그 아래에 “Windows 기능 켜기 또는 끄기”가 있습니다. 그것을 클릭하면 “Windows 기능”이라는 새 창이 열립니다.

거기에서 “Hyper-V”, “Virtual Machine Platform” 및 “Linux용 Windows 하위 시스템”을 검색합니다.

그런 다음 변경 사항을 적용하려면 재부팅을 요청합니다.

다음 명령을 실행하여 활성화할 수도 있습니다.

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

$ dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

WSL2 설치

모든 필수 구성 요소를 다루었으므로 이제 WSL을 설치할 차례입니다.

Windows 터미널(Windows 10) 또는 Windows PowerShell(Windows 11)을 열고 다음 명령을 입력합니다.

$ wsl

#산출

Copyright (c) Microsoft Corporation. All rights reserved.

Usage: wsl.exe [Argument]

Arguments:
…..

이는 WSL을 사용할 수 있지만 활성화되지 않았음을 의미합니다.

이제 WSL을 설치하려면 관리자 권한으로 다음 명령을 실행하십시오.

$ wsl --install

#산출

PS C:UsersLogan99> wsl --install

Installing: Virtual Machine Platform
Virtual Machine Platform has been installed.
Installing: Windows Subsystem for Linux
Windows Subsystem for Linux has been installed.
Installing: Ubuntu
Ubuntu has been installed.
The requested operation is successful. Changes will not be effective until the system is rebooted.

참고: Windows 기능을 통해 활성화한 것을 고려하면 이 메시지가 표시되지 않을 수 있습니다. 대신 다음 출력을 얻어야 합니다. (그렇다면 다음 섹션으로 이동하십시오).

Ubuntu is already installed.
Launching Ubuntu...
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username:
New password:
Retype new password:

WSL 버전을 확인하려면 wsl –version 명령을 입력합니다.

$ wsl --version

#산출

WSL version: 1.1.6.0

Kernel version: 5.15.90.1

WSLg version: 1.0.50

MSRDC version: 1.2.3770

Direct3D version: 1.608.2-61064218

DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp

Windows version: 10.0.22621.1413

알다시피 WSL 버전 1.1.6.0은 이미 사전 설치되어 제공됩니다. 따라서 작동하지 않고 오류가 출력되면 WSL이 설치되지 않은 것입니다.

WSL2로 변경하려면 다음 명령을 실행합니다.

$ wsl --set-default-version 2

시스템에 WSL이 이미 사전 설치되어 있으므로 이 메시지가 표시됩니다.

Windows 스토어에서 WSL을 설치할 수도 있습니다. 먼저 스토어를 열고 “Linux용 Windows 하위 시스템”을 검색합니다.

“받기”를 클릭하십시오. 설치될 때까지 기다립니다.

설치가 완료되면 “열기”를 클릭하면 “Linux용 Windows 하위 시스템에 설치된 배포판이 없습니다.”라는 메시지와 함께 Windows 터미널이 열립니다.

WSL에 배포 설치

WSL이 설치되면 Linux 배포판을 설치할 차례입니다.

기본적으로 WSL은 Ubuntu LTS 버전을 설치합니다. 이렇게 하려면 다음 명령을 실행해야 합니다.

$ wsl --install

우분투 설치가 시작됩니다. 설치하는 동안 새 UNIX 사용자 이름과 암호를 설정하라는 메시지가 표시됩니다.

  Microsoft Planner 마스터가 되기 위한 6가지 요령

설치가 완료되면 Ubuntu Linux 프롬프트가 표시됩니다. 여기에서 모든 Linux 명령을 사용할 수 있습니다. 우분투 버전을 확인해 봅시다.

$ lsb_release -a

#산출

No LSB modules are available.

Distributor ID: Ubuntu

Description:    Ubuntu 22.04.1 LTS

Release:        22.04

Codename:       jammy

그게 다야! 이제 Linux 커널에 액세스할 수 있습니다.

배포를 종료하려면 다음 명령을 입력해야 합니다.

$ exit

#산출

[email protected]:/mnt/c/Users/Logan99$ exit

logout

더 많은 배포판 설치

마찬가지로 Fedora, Debian 및 OracleLinux_8_5와 같은 다른 배포판을 설치할 수 있습니다. 사용 가능한 distro 옵션을 보려면 다음 명령을 입력하십시오.

$ wsl --list --online

Debian을 설치하려면 다음 명령을 입력해야 합니다.

$ wsl --install -d Debian

Or

$ wsl.exe --install Debian

Ubuntu와 마찬가지로 사용자 이름과 암호를 설치하라는 메시지도 표시됩니다.

#산출

이제 데비안 버전을 확인해보자.

$ cat /etc/issue

#산출

$ Debian GNU/Linux 11 n l

하지만 페도라는 어떻습니까? wsl –list –online 명령을 사용하면 나열되지 않습니다.

음, Windows 스토어에서도 배포판을 설치할 수 있습니다.

Windows 스토어를 열고 Linux distros를 입력합니다. 사용 가능한 모든 것을 나열합니다. 여기에서는 공식적으로 지원되는 배포판만 볼 수 있습니다.

비공식 배포판 지원을 위해서는 수동으로 검색해야 합니다. 그러나 이러한 비공식 배포판은 버그가 있을 수 있으며 100% 안전하지 않습니다. 따라서 실험용으로만 사용하십시오.

“설치”를 클릭하여 시스템에서 사용할 수 있도록 합니다.

기본 Distro 설정

사용 가능한 배포판 목록을 보려면 다음 명령을 사용하여 나열할 수 있습니다.

$ wsl --list

Ubuntu 주변의 “Default” 키워드는 명령 프롬프트에 “wsl”을 입력할 때 기본 Linux 배포판이 시작됨을 의미합니다.

기본 배포판을 변경하려면 다음 명령을 입력합니다.

$ wsl --setdefault <DistroName>

따라서 Debian을 기본 배포판으로 설정하려면 다음 명령을 입력해야 합니다.

$ wsl --setdefault Debian

따라서 다음에 터미널에 wsl을 입력하면 데비안이 실행됩니다.

Distro용 WSL 버전 전환

기본적으로 배포판은 WSL2를 사용합니다. 현재 설치된 배포판과 해당 WSL 버전을 나열하려면 다음 명령을 입력합니다.

$ wsl --list --verbose

#산출

NAME      STATE           VERSION

* Ubuntu    Stopped         2

  Debian    Stopped         2

여기서 *는 기본 Linux 설치를 나타냅니다.

이제 WSL 버전을 2에서 1로 변경하려면 다음을 입력합니다.

$ wsl --set-version Ubuntu 1

그리고 1에서 2로 다시 전환하려면 다음을 입력하십시오.

$ wsl --set-vesion Ubuntu 2

참고: 변환이 수행되는 데 다소 시간이 걸릴 수 있습니다. 변환 중에는 창을 닫지 마십시오.

다른 사용자 이름으로 특정 배포판 시작

특정 배포판을 시작하려면 어떻게 해야 합니까? 이렇게 하려면 다음 명령을 입력해야 합니다.

$ wsl -d <DistroName>

Or

$ wsl --distribution <DistroName>

Ubuntu를 시작하려면 다음을 입력합니다.

$ wsl -d Ubuntu

특정 사용자 이름으로 시작하려면 -user 다음에 사용자 이름을 추가해야 합니다.

$ wsl -d <DistroName> --user <UserName>

예를 들어 “root” 사용자 이름으로 데비안을 시작합니다.

$ wsl -d Debian --user root

참고: 존재하지 않는 사용자로 배포판을 시작하면 “사용자를 찾을 수 없습니다.”라는 오류가 발생합니다.

리눅스 업데이트

다음 명령을 입력하여 Linux 배포판을 업데이트할 수 있습니다.

$ sudo apt update

$ sudo apt upgrade

또한 WSL용 Linux 커널 업데이트를 찾을 수도 있습니다.

$ wsl --update

WSL2로 Visual Studio Code 설정

WSL과 작동하도록 VS Code를 설정할 수도 있습니다. 이렇게 하면 VS Code에서 직접 WSL 터미널에 액세스할 수 있습니다. Linux 관련 유틸리티 및 도구 체인에 액세스하면서 Linux 기반 애플리케이션에서 애플리케이션을 개발하는 데 도움이 될 수 있습니다.

  PS4에서 전화번호를 변경하는 방법

또한 VS Code 기능을 활용하면서 Windows 관련 생산성 도구에 액세스할 수도 있습니다.

작동하려면 원격 개발 확장 팩을 설치해야 합니다. 확장 탭에서 해당 이름을 검색하여 VS Code에서 직접 검색할 수도 있습니다.

로컬에서 작업하는 경우 VS Code 메뉴로 이동하여 설정할 수 있습니다. 여기에서 보기 > 터미널을 선택합니다.

터미널이 열립니다. “+” 기호 옆에 > 기호가 있습니다. 그것을 클릭하면 나열된 WSL 터미널을 찾을 수 있습니다.

여기에서 “기본 프로필”을 선택할 수도 있습니다.

이는 VS Code가 \wsl$ 및 localhost에서 실행 중인 모든 디버거에 직접 액세스할 수 있기 때문에 가능합니다.

그래픽 애플리케이션 및 WSL2 작업

그래픽 응용 프로그램을 사용하려면 WSL2용 올바른 드라이버를 설치해야 합니다. Intel, AMD, Nvidia는 Linux 기반 그래픽 응용 프로그램이 원활하게 작동할 수 있도록 WSL용 드라이버를 제공합니다.

그러나 이 접근 방식에는 여전히 문제가 있습니다. 우선, 이러한 그래픽 앱에는 일부 작동하지 않는 기능이 있을 수 있습니다. 또한 많은 앱이 작동하지 않을 수 있으므로 대안을 찾아야 합니다.

요컨대, 이것은 주로 시행 착오 방법으로 너무 많은 시간을 소비할 수 있습니다.

Ubuntu를 사용하여 그래픽 애플리케이션 작업에 대한 WSL2 가이드를 확인할 수 있습니다.

Windows의 Docker 데스크톱 WSL2

Hyper-V를 사용하여 로컬로 설정하지 않으려면 공식적으로 WSL2를 지원하는 Docker Desktop을 사용할 수 있습니다. 이를 통해 더 빠른 워크플로를 설정하여 Windows에서 직접 Docker 도구를 사용할 수 있습니다. 자세한 내용은 여기에서 가이드를 확인하세요.

Microsoft가 Linux를 진지하게 받아들이는 이유는 무엇입니까?

Microsoft는 독점 회사입니다. 폐쇄된 환경에서 Windows와 같은 솔루션을 만들고 사용자가 Linux가 아닌 Windows를 고수하기를 원합니다.

그러나 2016년에 그들은 오픈 소스에 대한 약속을 발표했습니다. 2001년 초 Steve Ballmer가 Linux를 “암”이라고 부르면서 관점이 바뀌었습니다.

2023년에는 상황이 바뀌었습니다. Microsoft는 자체 에코시스템에 Linux를 직접 채택합니다. 그들은 2019년 5월에 WSL2를 발표했고 2021년 10월에 Windows 스토어에 WSL2를 소개했습니다. 또한 2022년 11월에 WSL2 v1.0을 출시했습니다.

또한 Edge 및 Teams와 같은 Microsoft 소프트웨어를 Linux 사용자가 액세스할 수 있도록 했습니다. 그들은 또한 Linux 커널과 Linux Foundation의 제품 구성원에 적극적으로 기여하고 있습니다.

마이크로소프트가 리눅스를 진지하게 받아들이고 있음을 암시하는 이 모든 것. 그러나 일부 회의론자들은 Microsoft가 Linux를 사랑한다고 생각하지 않습니다.

요컨대 Microsoft는 Linux에 관심이 있습니다. 그들의 Window 하위 시스템은 그들이 Linux와 오픈 소스에 관심이 있다는 증거입니다. 그러나 가장 중요한 것은 사용자가 가상화를 사용하거나 Linux 운영 체제에 대한 이중 부팅을 수행할 필요 없이 Linux 커널에 원활하게 액세스할 수 있기를 원한다는 것입니다.

마지막 말

“개발자에게 가장 적합한 OS” 시대에 개발자는 두 가지 모두에 액세스할 수 있는 경로를 선택할 수 있습니다. WSL2는 다양한 Linux 배포판을 통해 Linux 커널에 대한 액세스를 제공합니다. 또한 빠르고 Docker와 함께 작동합니다.

현재 WSL2는 활발히 개발 중이며 호환성 문제를 해결하고 개발자의 손에 더 많은 권한을 부여합니다. 따라서 우리는 WSL2의 미래가 밝아 보인다고 말할 수 있으며 Microsoft는 Windows 사용자가 Linux 커널에 액세스할 수 있도록 모든 조치를 취하고 있습니다.

다음으로 Linux 배포판을 확인하여 시스템 관리자 및 개발자로 알고 있습니다.