설치했습니다WSL 1, 내 PC에서 Linux를 사용하는 것을 즐겼으며 두 운영 체제 간의 파일 상호 운용성이 부족하다는 한계를 발견했습니다.
그래서 설치했어요WSL 2사양(BIOS 설정 및 모든 항목에서 가상화 활성화)을 따르지만 설치가 완전히 작동하지 않고 기본값으로 설정할 수 없으며 모든 셸 명령이 예상대로 응답하지 않습니다.
구글링을 해보니 누군가 비슷한 문제가 있었지만 간단한 해결책이 많이 제안되지 않았습니다(아직도 비교적 새로운 사례인 것 같습니다).
따라서 WSL을 최대한 깊게 제거하고 WSL 2를 처음부터 다시 설치하고 싶습니다.
- WSL을 완전히 제거하는 가장 안전하고 권장되는 프로세스는 무엇입니까?
- 이전에 WSL 1을 설치하지 않고 WSL 2를 처음부터 설치할 수 있나요?
답변1
업데이트: 현시점에서는 다소 오래된 답변입니다. Windows 10 또는 11 22H2 이전에 설치된 이전 버전의 WSL을 실행하는 경우 제거 방법에 대한 정답일 수 있습니다. 그러나 WSL의 Store 버전(또는 UWP 버전)을 실행하는 경우 내 내용을 참조하세요.최신 답변(및/또는 다른 사용자의 답변(있는 경우)).
이전에 WSL 1을 설치하지 않고 WSL 2를 처음부터 설치할 수 있나요?
아니요. WSL2에는 기본 WSL 지원이 필요합니다.
WSL을 완전히 제거하는 가장 안전하고 권장되는 프로세스는 무엇입니까?
제거에 관해 제가 알고 있는 최고의 정보는 다음과 같습니다.모든 것WSL과 관련이 있습니다.
기존 인스턴스가 손실된 원인이라고 생각하는 것처럼 들리지만, 후손을 위해 백업하려면 다음으로 시작할 수 있습니다.
wsl --export <distroname> archivename.tar
그런 다음 기존 배포판 설치를 제거합니다.
- 스토어에서 설치한 배포판은 먼저 Windows의 "앱 및 기능"("프로그램 추가 또는 제거"라고도 함)을 통해 제거해야 합니다. 이는 다운로드한 Appx 패키지를 통해 수동으로 설치된 배포판에도 적용됩니다.
그런 다음 아무것도 남지 않았는지 확인하십시오. PowerShell 또는 CMD에서:
wsl -l
wsl --unregister <distroname>
해당 시점에 Store에서 새 배포판을 설치하고 싶을 수도 있습니다. 다른 구성 요소를 추가로 다시 설치한다고 해서 차이가 생길 가능성은 거의 없습니다. 하지만 삭제하고 싶다면 다음 단계를 따르세요.
Windows의 "앱 및 기능"("프로그램 추가 또는 제거"라고도 함)에서 "Linux 업데이트용 Windows 하위 시스템"을 제거합니다. 나는 이것이 Linux 커널 업데이트라고 확신합니다. 다음 단계를 진행하기 전에 완전히 사라졌는지 확인하려면 재부팅하는 것이 좋습니다.
"Windows 기능 켜기 또는 끄기"에서 "Linux용 Windows 하위 시스템"을 비활성화합니다. 설명에 따르면 다음 단계 전에 재부팅이 필요할 수 있습니다.
Windows의 "Windows 기능 켜기/끄기"에서 "가상 머신 플랫폼"을 비활성화합니다. 이는 WSL2 Hyper-V 지원입니다.
재부팅합니다.
거기에서 다시 설치할 때 커널 업데이트 패키지를 설치한 후 "Linux 업데이트용 Windows 하위 시스템"이 앱 및 기능으로 돌아가는지 확인해 주시면 감사하겠습니다.문서 설치). 해당 정보를 바탕으로 이 답변을 업데이트하겠습니다.
답변2
이 답변은 WSL의 최신 Store/UWP 버전을 나타냅니다. 이 최신 버전을 사용하고 있는지 확인하려면 PowerShell에서 다음을 실행하세요.
Get-AppxPackage |? { $_.Name -like "*WindowsSubsystemforLinux*" }
결과가 표시되면 이 답변을 계속 읽으세요. 결과를 얻지 못하면 이전 WSL 릴리스를 실행하고 있을 수 있습니다. 보다내 오래된 답변해당 버전을 완전히 제거하는 방법에 대해 알아보세요.
Store/UWP 버전의 경우 답변이 변경되었습니다.
이전에 WSL 1을 설치하지 않고 WSL 2를 처음부터 설치할 수 있나요?
예, Windows 11 22H2에서는 wsl --install
기본적으로오직WSL2를 설치합니다. WSL1을 설치하려면 wsl --install --enable-wsl1
.
--enable-wsl1
최신 WSP 버전과 호환되는 완전히 업데이트된 시스템에서도 Windows 10에서는 이 옵션을 사용할 수 없습니다. Window 10(19045.2311)에서 WSL1은 여전히 자동으로 설치되고 wsl --install
.
WSL을 완전히 제거하는 가장 안전하고 권장되는 프로세스는 무엇입니까?
제거에 관해 제가 알고 있는 최고의 정보는 다음과 같습니다.모든 것WSL과 관련이 있습니다. 이렇게 하면 (a) 모든 기능이 제거되고 (b) 모든 디스크 공간이 회수됩니다.
선택적으로 기존 배포를 백업합니다.
기존 인스턴스가 손실된 원인이라고 생각하는 것처럼 들리지만, 후손을 위해 백업하려면 다음으로 시작할 수 있습니다.
wsl --export <distroname> archivename.tar
를 통해 백업할 모든 배포 이름을 확인합니다
wsl -l -v
.또는 배포판에서 중요한 파일만 배포판 외부의 안전한 장소에 복사하세요. 일반적으로 여기에는 홈 디렉터리의 모든 내용이 포함되며 보관하고 싶은 파일도
/var
살펴 봅니다./etc
선택적으로 백업된 배포의 유효성을 확인합니다.
물론 백업이 중요하다면
wsl --import
새 이름으로 작동하는지 확인하세요.기존 배포 등록을 취소합니다.
에서 발견된 각 배포판에 대해 다음
wsl -l -v
을 통해 제거합니다.wsl --unregister <distroname>
경고: 위와 같이 유효한 백업이 없으면 이는 파괴적이고 되돌릴 수 없는 작업입니다.
모든 배포판 제거패키지(애플리케이션) 스토어에서 설치됨:
이동설정->프로그램 추가 또는 제거Store에서 설치한 배포판(Ubuntu, Debian, Alpine, openSUSE 등)을 찾아보세요. 이는 실제로 위에서 등록을 취소한 배포판과 별개입니다. 이러한 패키지에는 원래 배포판(예: )을 생성한 Distro Launcher 및 rootfs가 포함되어 있습니다
ubuntu2004.exe
.각 배포판을 제거합니다.
이전 Windows 버전에서는 이러한 패키지를 제거합니다.또한해당 배포판을 제거하여 의도하지 않은 데이터 손실이 발생했습니다. 대부분의 최신 시스템에서는 이를 별도의 두 단계로 제거해야 하는 것으로 보이며 이는 좋은 일입니다.
또한설정->프로그램 추가 또는 제거, "Linux용 Windows 하위 시스템" 앱을 찾아 제거합니다. 여기에는 다음이 포함될 수 있습니다.
- Linux용 Windows 하위 시스템: 기본 WSL 패키지 자체
- Linux 업데이트용 Windows 하위 시스템: WSL의 이전 버전(Windows 기능으로 제공되는 기본 제공) 버전용 커널 패키지에 대한 업데이트입니다.
- Linux WSLg 미리 보기용 Windows 하위 시스템: Windows 11과 함께 제공되는 WSLg 기능입니다.
사용 중인 다른 파일을 해제하려면 이 시점에서 재부팅하는 것이 가장 좋습니다.
다음으로 이동설정->Windows 기능 켜기 또는 끄기.
활성화된 경우 다음을 비활성화합니다.
- 가상 머신 플랫폼
- Linux용 Windows 하위 시스템
Windows에서 재부팅하라는 메시지가 표시될 수 있습니다.
재부팅 후 위의 항목이 모두 성공적으로 제거되었는지 확인합니다. 이때 어떤
wsl
명령 이라도~해야 한다단순히 기본 "설치" 도움말 텍스트를 반환하면 됩니다.
여기에서 다시 설치하는 권장 방법은 다음과 같습니다.
관리자 권한 PowerShell을 엽니다. 이 작업은 일반 사용자로 수행하는 것보다 관리자 권한 세션에서 수행하는 것이 가장 좋습니다.분리된관리자.
wsl --install
기본적으로 다음이 수행됩니다.
- 가상 머신 플랫폼을 다시 활성화합니다.
- Microsoft Store에서 최신 WSL 릴리스를 설치합니다. 이제 이 릴리스에는 이전처럼 별도의 설치 단계가 필요하지 않고 커널이 직접 포함됩니다.
- Microsoft Store에서 기본 Ubuntu 배포판 설치
wsl --help
추가 설치 옵션 도 참조하세요 . 예를 들어, 이 단계에서 배포판 설치를 건너뛰거나 다른 배포판을 선택할 수 있습니다.