zamboga
@zamboga
Бизнес-аналитика, фин. моделирование, дашборды

Как правильно удалять снэпшоты (snapshots) в VirtualBox для минимизации размера?

Поставил Windows XP на Oracle VirtualBox для экспериментов с автомобильным сканером. Система с нужным софтом занимает 1,5 Gb (дистрибутив Windows XP сильно урезанный и без всяких hybernate.sys и pagefile.sys)

В процессе экспериментов (касающихся ТОЛЬКО настроек софта, без доп. установки чего-либо) наплодил 7 снапшотов в двух ветках. Сейчас хочу удалить ненужные снимки, оставив один последний снимок в одной ветке.
Перед удалением сделал полный клон всей выключенной виртуальной машины на всякий случай.

В клоне удалил все снимки кроме нужного, на выходе размер — 10 Гигабайт. Что я сделал не так, и какой должен быть правильный порядок удаления снэпшотов, чтобы размер вернулся к первоначальному 1,5 Гб или сильно близко к этому?
  • Вопрос задан
  • 3109 просмотров
Решения вопроса 1
tsklab
@tsklab
Здесь отвечаю на вопросы.
Как правильно удалять снэпшоты (snapshots) в VirtualBox для минимизации размера?
Снимки системы при удалении (слиянии) только увеличивают размер виртуального диска, если он изменяемый. Чтобы сжать виртуальный диск, а это зависти от его типа, можно выполнить команду:
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" modifyhd "H:\-virtual-box-disc\tsk-7-64.vdi" --compact

Может не помочь.
Для виртуальных дисков советуют чистить незанятое пространство:
@Echo OFF
Echo %COMPUTERNAME%: %DATE% %TIME% Clean free space > run.log
sdelete.exe -C С:
Echo %DATE% %TIME% Zero free space >> run.log
sdelete.exe -Z С:
Echo %DATE% %TIME% End>> run.log

В самой машине с помощью Программа SDelete (версия 1.6.1)

Антон Ефремов @zamboga
Все ок, спасибо, сжал образ. Пара ремарок.
1. У вас ошибка в синтаксисе sdelete. Ключа -с не существует, есть ключ -s.

Нет никакой ошибки:
SDelete - Secure Delete v1.61
Copyright (C) 1999-2012 Mark Russinovich
Sysinternals - www.sysinternals.com

usage: C:\Program Files\SDelete\sdelete.exe [-p passes] [-s] [-q] <file or directory> ...
       C:\Program Files\SDelete\sdelete.exe [-p passes] [-z|-c] [drive letter] ...
   -a         Remove Read-Only attribute
   -c         Clean free space
   -p passes  Specifies number of overwrite passes (default is 1)
   -q         Don't print errors (Quiet)
   -s or -r   Recurse subdirectories
   -z         Zero free space (good for virtual disk optimization)


Проще всего ввести одну команду, чем батник писать: sdelete.exe c: -s -z

C:\Program Files\SDelete\sdelete.exe [-p passes] [-z|-c] [drive letter] ...

Если обрабатывать диск целиком, то [-z|-c] означает или. А ваша команда не очистит место занятое удалёнными папками.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы