VirtualBox의 매력적인 기능 중 하나는 바로 가상 머신의 스냅샷(snapshot)을 생성할 수 있다는 점입니다. 작업을 진행하고 특정 시점의 상태를 저장한 뒤, 변경 사항을 적용한 후 언제든 저장된 상태로 손쉽게 되돌아갈 수 있습니다. 가상 머신이 실행 중이든 중지된 상태든 스냅샷을 자유롭게 생성하고 분기할 수 있어, 검증된 시스템 상태를 반복적으로 테스트해야 하는 상황에서 뛰어난 유연성과 재현성을 제공합니다.
하지만 스냅샷에는 치명적인 단점이 있습니다. 바로 상당한 디스크 공간을 차지한다는 것입니다. 실제로 필자의 경우, 예상 용량이 약 11GB에 불과한 가상 머신이 어느 순간 무려 46GB의 디스크 공간을 차지하고 있는 것을 발견했습니다. 원인은 바로 스냅샷, 총 7개의 서로 다른 저장 상태였습니다. 문제는 이때부터입니다. 더 이상 스냅샷이 필요 없다면 어떻게 병합(flatten)하고 디스크 사용량을 줄일 수 있을까요? 지금부터 자세히 알아보겠습니다.

VirtualBox에서 스냅샷을 병합하는 방법
생각보다 간단하지 않은 문제입니다. 여러 스냅샷을 한 번에 병합해주는 마법 같은 버튼은 존재하지 않습니다. 기본적으로 가능한 방법은 현재 스냅샷 아래에 있는 스냅샷을 하나씩 수동으로 삭제하는 것입니다. 이렇게 하면 VirtualBox가 변경 사항을 순차적으로 병합하는데, 이 과정은 상당한 시간이 소요될 수 있습니다.


다행히 더 빠른 대안이 있습니다. 바로 클론(Clone)입니다. 지난 글에서도 클론 기능을 여러 차례 다룬 적이 있는데, 주로 가상 머신 디스크 크기 조정과 관련된 내용이었습니다. 가상 머신의 디스크가 용도에 비해 너무 작아졌다면 디스크 크기를 늘릴 수 있지만, 이 기능은 스냅샷이 없는 경우에만 작동합니다. 해당 튜토리얼에서는 머신을 클론하여 스냅샷을 통합한 뒤 디스크를 확장하는 방법을 소개했습니다. 원리는 동일하므로, 이번에는 단계별로 명확하게 살펴보겠습니다.
가상 머신 클론 생성하기
VirtualBox Manager 목록에서 가상 머신을 선택하면 오른쪽 패널 상단 메뉴에 Clone(복제) 버튼이 나타납니다. 버튼을 클릭하고 마법사를 따라 진행하세요. 설정 항목이 몇 가지 있지만, 핵심은 다음 두 가지입니다.
1. 클론 유형 선택
반드시 Full Clone(전체 복제)을 선택해야 합니다.
2. 보존할 스냅샷 선택
Current machine state(현재 머신 상태)를 선택하세요. 만약 두 번째 옵션인 Everything(모두)을 선택하면 스냅샷까지 함께 복제되므로 디스크 공간 절약 효과를 전혀 얻을 수 없습니다.


추가로 네트워크 주소(MAC), 디스크 이름, 하드웨어 UUID까지 복제할 수 있습니다. 이 옵션이 매우 유용한 이유는, 겉보기에 동일한 운영 체제가 "다른" 하드웨어로 인식되어 발생할 수 있는 잠재적 충돌을 걱정할 필요가 없기 때문입니다. 완전히 동일한 복제본이 만들어집니다.
Clone 버튼을 누르고 잠시 기다리면 됩니다. 소요 시간은 가상 머신의 크기, 디스크 사용량, 시스템 성능에 따라 달라지지만, 전체적으로 단일 스냅샷 하나를 병합하는 데 걸리는 시간과 비슷합니다. 따라서 스냅샷이 여러 개라면 클론 방식이 자동으로 시간을 절약해 줍니다.

복제가 완료되면 클론된 머신을 즉시 사용할 수 있습니다. 필자는 일시 중단(suspended) 상태의 가상 머신을 포함해 여러 가지 방식으로 테스트했는데, 모두 완벽하게 작동했습니다. 클론된 머신은 열려 있던 창과 실행 중이던 응용 프로그램까지 포함해 원본 시스템이 멈췄던 바로 그 지점에서 이어져 실행되었습니다. 유일한 차이점은 스냅샷이 모두 사라졌다는 것이며, 원본 머신을 삭제한 후 상당한 디스크 공간을 되찾을 수 있었습니다.
마치며
이것으로 정리가 끝났습니다. 방법은 같지만 초점이 조금 다릅니다. 이 글은 기존의 디스크 크기 조정 튜토리얼과 크게 다르지 않지만, 오직 클론을 통한 스냅샷 통합에 집중했다는 점이 다릅니다. VirtualBox에서 스냅샷과 디스크 공간을 관리하는 방법은 두 가지가 있으며, 전체 클론 방식이 개별 스냅샷을 하나씩 삭제하는 것보다 빠릅니다. 다만 수동 삭제 방식에는 장점이 있습니다. 일부 스냅샷을 남겨두거나 특정 스냅샷만 골라 통합할 수 있다는 점입니다. 예를 들어 가장 오래된 스냅샷만 병합하고 최근 3개는 유지하는 식으로 말이죠.
이 가이드가 도움이 되기를 바랍니다. VirtualBox는 훌륭한 기능이 가득한, 진취적인 개발자와 파워 유저에게 정말 유용한 도구입니다. 스냅샷은 매우 실용적이지만 디스크 공간 사용량을 크게 늘리는 경향이 있습니다. 저장 공간이 부족해진다면 가상 머신을 선택적으로 클론하거나 특정 스냅샷을 삭제하여 소중한 디지털 공간을 되찾으시기 바랍니다.
그럼, 즐거운 컴퓨팅 되세요!