[TIL] WSL2 디스크 압축

cjkangme·2024년 11월 1일
0

TIL

목록 보기
34/35

WSL2 디스크 압축때마다 찾아다니지 않기 위해 기록용으로 작성하는 포스트 입니다.

WSL은 윈도우에서 리눅스를 사용할 수 있다는 점에서 간편하지만 리소스를 많이 잡아먹는다는 문제가 있는데요. 특히 한번 디스크가 할당되면 WSL 가상 머신 내에서 파일을 지워도 윈도우로 용량이 돌아오지 않는다는 문제가 있습니다.

이 경우 수동으로 가상 머신의 디스크를 압축해주어야 합니다.

현재 프로세스 종료

파워쉘에서 작업 기준

  1. 현재 구동중인 가상 머신 확인
$ wsl -l -v
  1. 압축할 가상 머신 종료
$ wsl -t <NAME>

가상 머신과 연결된 프로그램이 실행되고 있으면 안됩니다. (VS Code 등)

  1. (작업 완로 후) 가상 머신 재실행
$ wsl -d <NAME>

디스크 압축

파워쉘에서 작업 기준

  1. diskpart 실행
diskpart
  1. vdisk 선택
select vdisk file="<VDISK_FILE_PATH>"

vdisk 경로를 모르는 경우 다음과 같이 조회 가능

(Get-ChildItem -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss | Where-Object { $_.GetValue("DistributionName") -eq '<NAME>' }).GetValue("BasePath") + "\ext4.vhdx"

<NAME>에 앞서 wsl -l -v로 조회한 NAME 입력

  1. 디스크 압축
compact vdisk
  1. diskpart 종료
exit
post-custom-banner

0개의 댓글