wsl2를 사용하는 동안 ext4.vhdx 파일을 조사하고 내부 내용을 확인하는 방법

wsl2를 사용하는 동안 ext4.vhdx 파일을 조사하고 내부 내용을 확인하는 방법

현재 나는 wsl2를 사용하고 있으며 ext4.vhdx에 상당한 양의 디스크 공간이 필요하다는 것을 알았습니다. 마치 Ubuntu의 파일 관리 시스템이라는 것을 알고 있지만 내부 내용을 깊이 이해하지 못하기 때문에 내부를 살펴보고 모두 삭제하고 싶습니다. 불필요한 파일, 어떻게 해야 하나요? 내가 아는 것처럼 wsl2는 사용한 디스크 공간을 호스트 시스템에 다시 해제하지 않습니다(나는 Windows 10을 사용하고 있습니다). 그래서 우분투가 어떤 디스크 저장소를 보유하고 있는지 알고 싶습니다.

답변1

@thomas-ward의 답변은 정확하지만 여전히 답변이 필요한 추가 "질문"이 있는 것 같습니다.

우선, 다른 답변을 다시 말하면 ext4.vhdxWSL을 실행하고 파일을 보면 전체 내용을 가장 쉽게 볼 수 있습니다. 예를 들어:

sudo find / -xdev | less

ext4이렇게 하면 루트( )로 마운트된 파일 시스템 의 모든 파일을 찾을 수 있지만 /마운트된 NTFS/Windows 드라이브의 파일은 찾을 수 없습니다( -xdev다른 파일 시스템은 제외).

다음을 사용하여 동일한 파일에서 사용 중인 저장소를 확인할 수도 있습니다.

sudo du -hdx

해당 양이 파일 크기와 다른 경우 ext4.vhdx예, 이미 의심한 대로 회수되지 않은 공간이 있을 가능성이 높습니다. 귀하의 질문에서 언급했듯이 WSL은자라다해당 파일은 필요에 따라 자동으로 실행되지는 않습니다.수축파일이 제거될 때.

파일을 수동으로 축소하려면 제가 언급한 단계 중 하나를 따르세요.이 슈퍼유저 답변. 다음은 참조된 Github 댓글에서 복사한 것 중 하나입니다.

wsl --shutdown
# At this point, it is recommended that you back up your ext.vhdx and delete the backup once you have confirmed the other commands are successful.
diskpart
# open window Diskpart
select vdisk file="C:\WSL-Distros\…\ext4.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk
exit

참고: 직접 액세스하는 다른 방법은 vhdxHyper-V에서 새 Linux 기반 VM을 가동하고 해당 가상 드라이브(또는 그 복사본)를 인스턴스에 추가하는 것입니다. Windows는 ext4 파일 시스템을 이해하지 못하기 때문에 Windows에서 직접 검사하는 것은 불가능합니다.

답변2

Windows에서는 VHDX를 직접 검사하는 것이 파일 시스템을 포함하므로 권장되지 않습니다 ext4.

기본적으로 VHDX가 보유하는 것은 전체 Ubuntu 운영 체제와 추가 파일/프로그램/라이브러리/등입니다. WSL 내에 설치했습니다. WSL2가 Ubuntu WSL 환경을 실행하기 위해 가상화와 함께 사용하는 시스템의 전체 '하드 디스크'입니다. 기본적으로 WSL에서 탐색하여 볼 수 있는 모든 파일( /usr/lib/...예:)은 VHDX에 있는 파일입니다.

관련 정보