Как сжать чрезмерно увеличившийся виртуальный диск VirtualBox

У виртуальных динамических дисков VDI, созданных в программе VirtualBox есть одна особенность, которая при определённых обстоятельствах может доставить пользователю некоторые неудобства. При копировании на них массивов данных динамические виртуальные диски имеют свойство расширяться, но если затем вы удалите с такого диска все файлы, его размер останется прежним. Таким образом виртуальная машина может раздуться до весьма значительных размеров, заняв на физическом носителе неоправданно много места.


Ключ resize, предназначенный для изменения размера виртуального диска VirtualBox в данном случае бесполезен, так как работает он только в одну сторону — в сторону расширения диска. Чтобы сжать виртуальный диск, необходимо использовать другой ключ — compact. Но перед тем как приступать к сжатию, нужно удалить с виртуального диска все ненужные файлы, а затем выполнить его зачистку с помощью утилиты Sdelete, созданной известным программистом Марком Руссиновичем и входящей в пакет средств администрирования Windows Sysinternals. Также необходимо удалить все снимки виртуальной машины, в противном случае вы можете получить ошибку.

Примечание: утилита Sdelete используется для очистки разделов и дисков в ОС Windows, для очистки дисков в Linux следует использовать утилиту ZeroFree.

Sdelete имеет маленький вес и не требует установки.

Sdelete

Поместите её внутри запущенной виртуальной машины в корень системного раздела, а затем, открыв от имени администратора командную строку, выполните такие команды:

cd C:\
sdelete.exe -s -z C:

Команды CMD

Аналогичным образом зачистите свободное пространство пользовательского раздела.

sdelete.exe -s -z D:

После этого завершите работу виртуальной машины, от имени администратора откройте в базовой системе командную строку и последовательно выполните две этих команды:

cd C:\Program Files\Oracle\VirtualBox
VboxManage.exe modifyhd "D:\Oracle VM VirtualBox\Windows 10 x86 Ent 1607.vdi" --compact

VirtualBox

Первой командой мы переходим в расположение утилиты VboxManage.exe, а второй производим сжатие виртуального диска с помощью команды modifyhd и ключа compact. Путь к файлу VDI у вас будет свой, также не забывайте о прямых кавычках, если в пути или имени файла есть пробелы. Процедура сжатия занимает больше времени, чем расширение (на это нужно всего несколько секунд), так как утилите приходится работать с реально занятым дисковым пространством.

А теперь, наверное, самый интересный вопрос. Как и от каких виртуальных разделов будет отнято дисковое пространство?

От обеих, причём забрано будет всё виртуальное пространство, на котором нет файлов, — именно на столько будет сжат файл VDI. Однако визуально в самой виртуальной машине ничего не изменится. Разделы в ней по-прежнему будут иметь «свободное место», а сам размер дисков видимо останется таким же, каким он был до сжатия. Но это все, конечно, пустяки. Главное, что таким образом вы уменьшите размер файла VDI, высвободив тем самым место на физическом жёстком диске.

Утилита Sdelete: technet.microsoft.com/ru-ru/sysinternals/bb897443.aspx

Теги: , ,

Предыдущая/следующая

Вам может быть интересно:

Поделиться в соц сетях:

Twitter Facebook Vk Googlepluse Linkedin

Подпишитесь на обновления этого блога по RSSRSS, RSSMAILEmail или TwitterTwitter!

Случайная подборка из рубрики:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Обсуждаемые темы:

Авторизация
*
*
Войти с помощью: 
Регистрация
*
*
*
Войти с помощью: 
Генерация пароля