WSL에는 어떤 Linux 커널이 있나요?

WSL에는 어떤 Linux 커널이 있나요?

Ubuntu 22.04와 함께 WSL 2를 설치했습니다.

PowerShell에서 WSL 커널을 확인하려고 하면 다음과 같은 결과가 나타납니다.

PS C:\Users\user> wsl --status
Default Distribution: Ubuntu-22.04
Default Version: 2

Windows Subsystem for Linux was last updated on 6/7/2022
WSL automatic updates are on.

Kernel version: 5.10.102.1

위 메시지에서 나는 Linux 커널 5.10.102.1을 사용하고 있다고 가정합니다.

하지만 Ubuntu를 실행하고 사용하면 uname -a다른 Linux 커널이 표시됩니다.

user@DESKTOP-:/mnt/c/Users/user$ uname -a
Linux DESKTOP-VMP6T3Q 4.4.0-19041-Microsoft #1237-Microsoft Sat Sep 11 14:32:00 PST 2021 x86_64 x86_64 x86_64 GNU/Linux

Linux 커널이 4.4.0이라는 뜻입니다.

내 질문:

  1. 어떤 버전의 Linux 커널을 사용하고 있나요?
  2. 4.4.0이라면 어떻게 5.x로 업그레이드할 수 있나요?
  3. 5.10이라면 해당 버전인지 어떻게 확인할 수 있나요?

답변1

WSL2는 설치하는 새 배포판의 기본값이지만 Ubuntu 배포판은 원래 WSL1로 설치된 것으로 보입니다.

다음을 통해 이를 확인할 수 있습니다.

wsl.exe -l -v

WSL1에서 실행될 때 uname -a의사 커널은 다음과 같이 보고합니다.

  • "리눅스"
  • 호스트 이름
  • "4.4.0-"
  • Windows 빌드 번호(귀하의 경우 19041)
  • "-마이크로소프트"
  • ...

WSL2에서 커널은 다음과 같이 보고합니다.

  • "리눅스"
  • 호스트 이름
  • 커널 버전
  • "-microsoft-표준-WSL2"

배포판을 설치하는 것은 매우 일반적입니다.~ 전에WSL2가 설치되었거나 기본값으로 설정되었습니다. 기본 버전을 2로 변경해도 이미 설치된 배포판은 실제로 변경되지 않습니다.

배포판을 종료한 다음 PowerShell에서 배포판을 변환할 수 있고 변환해야 합니다.

wsl --set-version Ubuntu-22.04 2

원하는 경우 먼저 다음을 사용하여 백업할 수 있습니다.

wsl --export Ubuntu-22.04 Ubuntu2204_backup.tar

unzipUbuntu 22.04에는 WSL1에서 몇 가지 중요한 문제가 있고 특히 명령이 작동하지 않기 때문에 "해야 한다"고 말합니다.

답변2

기본 WSL 버전은 2로 설정되어 있지만 실행 중인 WSL 배포판은 WSL 1입니다. 이는 Linux 커널을 전혀 사용하지 않습니다.

WSL 1(윈도우 10):

$ uname -a
Linux db-d-18 4.4.0-19041-Microsoft #1237-Microsoft Sat Sep 11 14:32:00 PST 2021 x86_64 GNU/Linux

WSL 2:

# uname -a
Linux db-d-18 5.4.72-microsoft-standard-WSL2 #1 SMP Wed Oct 28 23:40:43 UTC 2020 x86_64 GNU/Linux

WSL 1과 2는 서로 다른 요구 사항을 충족합니다. WSL 1은 Windows 소프트웨어 및 파일의 고성능 상호 운용성을 제공합니다. WSL 2는 Windows 호스트의 파일 시스템에 액세스할 때 성능이 제한되는 대신 컨테이너와 더 빠른 Linux 파일 시스템을 지원하는 실제 Linux 커널을 제공합니다.

일반적으로 커널 버전을 기준으로 선택하면 안 됩니다.

관련 정보