WSL 설치 과정 오류 정리

WSL 설치 과정 오류 정리입니다. wsl --install, 상태 확인, 0x8007019e, 0x80370102, 저장 위치, 커널 업데이트 오류 대응을 정리했습니다.

WSL 설치 과정 오류 정리

WSL 오류는 대부분 Windows 기능 비활성화, 오래된 WSL 버전, 가상화 미지원 또는 BIOS/UEFI 비활성화, 배포판 저장 위치 문제에서 발생한다. 현재 Windows 10/11 환경에서는 우선 wsl --install, wsl --status, wsl --update 기준으로 상태를 확인하는 것이 좋다.

기본 설치와 상태 확인

관리자 권한 PowerShell 또는 Windows Terminal에서 실행한다. 이미 설치되어 있다면 상태 확인부터 시작한다.

wsl --status
wsl --version
wsl --list --verbose
wsl --list --online
wsl --install
wsl --install -d Ubuntu
wsl --set-default-version 2
wsl --update

0x8007019e: WSL 기능 비활성화

WslRegisterDistribution failed with error: 0x8007019e는 Linux용 Windows 하위 시스템 기능이 꺼져 있을 때 자주 나온다. GUI에서 Windows 기능을 켜도 되고, PowerShell에서 기능을 활성화할 수도 있다.

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

기능을 켠 뒤에는 재부팅하고 다시 확인한다.

wsl --status
wsl --list --verbose

0x80370102 또는 0x80070003: 가상화와 저장 위치

0x80370102는 WSL 2 VM을 시작하는 데 필요한 가상화 기능이 꺼져 있을 때 많이 발생한다. 작업 관리자 CPU 탭에서 Virtualization이 Enabled인지 확인하고, BIOS/UEFI에서 Intel VT-x 또는 AMD-V 계열 옵션을 켠다.

systeminfo | findstr /i "Hyper-V Virtualization"
bcdedit /enum | findstr /i hypervisorlaunchtype

0x80070003은 배포판이 시스템 드라이브가 아닌 위치에 저장되었거나, Windows의 새 앱 저장 위치 설정과 충돌할 때도 발생한다. Microsoft Store 앱 저장 위치가 일반적으로 시스템 드라이브인 C:를 가리키는지 확인한다.

wsl --set-version이 안 되는 경우

Invalid command line option: wsl --set-version Ubuntu 2가 나오면 Windows 빌드가 오래되었거나 WSL 명령이 구버전일 수 있다. 먼저 WSL과 Windows를 업데이트하고, 배포판 이름을 정확히 확인한다.

wsl --update
wsl --shutdown
wsl --list --verbose
wsl --set-version Ubuntu 2

가상 디스크 압축/암호화 문제

WSL 배포판의 LocalState 폴더나 ext4.vhdx가 NTFS 압축 또는 암호화 상태면 변환이나 실행이 실패할 수 있다. Windows 탐색기에서 해당 폴더의 고급 속성에서 압축/암호화를 해제한다.

%USERPROFILE%\AppData\Local\Packages\
  CanonicalGroupLimited.Ubuntu*_*\LocalState\

PowerShell에서는 배포판 위치를 직접 추적하기보다 먼저 배포판 이름과 상태를 확인한다.

wsl --list --verbose
wsl --shutdown

wsl 명령을 찾을 수 없는 경우

PowerShell Core, Command Prompt, Windows PowerShell의 PATH 차이 또는 WSL 기능 미설치 때문에 wsl을 찾지 못할 수 있다. Linux 배포판 내부 Bash에서 Windows 명령을 부를 때는 wsl.exe처럼 확장자를 붙여 확인한다.

where.exe wsl
wsl.exe --status

커널 업데이트 오류

WSL 2에는 커널 구성 요소에 대한 업데이트가 필요합니다 또는 This update only applies to machines with the Windows Subsystem for Linux 메시지가 나오면 WSL 기능 활성화, 재부팅, WSL 업데이트 순서로 다시 확인한다.

wsl --update
wsl --shutdown
wsl --status

정리 순서

  1. Windows 업데이트를 적용한다.
  2. wsl --status, wsl --version으로 현재 상태를 본다.
  3. WSL과 Virtual Machine Platform 기능을 켠다.
  4. BIOS/UEFI 가상화를 확인한다.
  5. wsl --update 후 재부팅한다.
  6. 배포판 이름을 확인하고 wsl --set-version을 실행한다.

관련 링크: Microsoft Learn - Install WSL, Microsoft Learn - Basic commands for WSL, Microsoft Learn - WSL troubleshooting

BGM EVER