VM을 사용하다 보면, 가상 디스크 파일(vdi)의 크기가
VM 내부의 디스크 사용량 증가에 따라 함께 커지게 된다.

중요한 점은,
VM 내부에서 파일을 삭제하여 디스크 사용량이 줄어들더라도
한 번 증가한 vdi 파일의 크기는 자동으로 다시 줄어들지 않는다는 것이다.
예를 들어,
VM 내부 디스크 사용량이 최대 16GB까지 증가했다가
이후 8GB 수준으로 감소하더라도,
호스트에 생성된 vdi 파일의 크기는 16GB 상태로 유지된다.
즉, 가상 디스크는
‘팽창했다가 자동으로 수축되는 구조’가 아니라,
최대 사용량 기준으로 크기가 확정되는 방식이다.
vdi 파일의 크기를 축소시키기 위해서는
가상 디스크 압축(Compaction) 작업을 수행해야 한다.
#01. /dev/zero 로 디스크를 0으로 채우는 작업
VM 내부 파일시스템의 미사용 블록을 0으로 채우는 작업으로,
Oracle VirtualBox 뿐만 아니라 다른 가상화 환경에서도 동일하게 사용 가능한 방법.
# 1. /dev/zero의 내용을 'fill_me.tmp' 파일에 기록하여 디스크 여유 공간을 0으로 채우기.
dd if=/dev/zero of=fill_me.tmp bs=1M
# 2. 작업이 완료되면 'dd'가 'No space left on device' 에러를 출력하고 중지된다.
# 3. 생성된 임시 제로 파일을 바로 삭제하여 공간을 다시 확보한다.
rm fill_me.tmp
# 4. 동기화 명령 실행 (선택 사항이지만 권장)
sync
#02. 가상 디스크 압축 (Compaction) 실행
아래 내용은 Oracle VirtualBox 전용.
#. VirtualBox에서 디스크 압축 (Compaction) 실행
cd "C:\Program Files\Oracle\VirtualBox\"
VBoxManage modifymedium --compact "C:\work\vm\OracleLinux8.10_k8s_test\OracleLinux8.10_k8s_test.vdi"
'플랫폼 관련 > LINUX, UNIX' 카테고리의 다른 글
| [Linux] X11-DISPLAY 설치 가이드 (0) | 2026.01.09 |
|---|---|
| chmod 명령어를 사용해서 group 혹은 other 권한만 제거 (0) | 2025.11.19 |
| Linux VM을 프록시 서버로 활용하기 (Squid 사용) (0) | 2025.05.22 |
| [Linux/Unix] sudo 사용했을 시 특정 명령어 command not found 발생하는 현상 (0) | 2024.08.30 |
| Red Hat Enterprise Linux 릴리즈 노트 (0) | 2024.08.26 |