Сжать виртуальный жесткий диск VDI в VirtualBox можно несколькими способами: через встроенный инструмент VBoxManage или графический интерфейс утилиты. Процесс состоит из двух этапов — очистки места внутри виртуальной машины и сжатия образа диска на хосте. Это позволит освободить значительное место на физическом диске вашего ПК.
Зачем сжимать виртуальный жесткий диск
- Виртуальная машина занимает больше места, чем реально использует данных
- Удаленные файлы остаются в образе диска и не освобождают пространство автоматически
- На диске хосты может не хватать места для работы системы и программ
- Регулярное сжатие улучшает производительность и скорость работы ВМ
- Требуется перед архивированием или переносом виртуальной машины на другой компьютер
Подготовка виртуальной машины
- Включите виртуальную машину и дождитесь полной загрузки операционной системы.
- Удалите ненужные файлы, программы и данные, которые вам больше не нужны.
- Очистите корзину (Recycle Bin на Windows или Trash на Linux/macOS внутри ВМ).
- Запустите встроенную утилиту очистки диска:
- Для Windows: откройте
Параметры→Система→Хранилище→Очистка дискаили запуститеDisk Cleanupиз менюПуск. - Для Linux: выполните команду
sudo apt-get autoclean && sudo apt-get autoremoveв терминале.
- Для Windows: откройте
- Заполните свободное место нулями для корректного сжатия:
- Для Windows: скачайте утилиту
cipher /w:C:(встроенная команда) или используйтеeraser. - Для Linux: выполните команду
cat /dev/zero > /tmp/zero.bin; rm /tmp/zero.bin.
- Для Windows: скачайте утилиту
- Завершите работу виртуальной машины полностью (не переводите в режим сна).
Сжатие образа диска VDI через VBoxManage
- Откройте командную строку (или PowerShell для Windows, терминал для Linux/macOS) на хосте.
- Перейдите в директорию, где установлен VirtualBox:
- Для Windows:
cd "C:\Program Files\Oracle\VirtualBox" - Для Linux:
/usr/bin(команда доступна сразу) - Для macOS:
/Applications/VirtualBox.app/Contents/MacOS
- Для Windows:
- Выполните команду сжатия, заменив
path_to_disk.vdiна полный путь к вашему диску:VBoxManage modifymedium --compact "path_to_disk.vdi" - Дождитесь завершения процесса (это может занять несколько минут в зависимости от размера диска).
- Проверьте размер файла VDI в свойствах папки — он должен уменьшиться.
Сжатие образа диска через графический интерфейс VirtualBox
- Запустите приложение VirtualBox на хосте.
- Перейдите в меню
Файл→Менеджер виртуальных носителей(илиFile→Virtual Media Manager). - Найдите в списке виртуальный жесткий диск вашей машины (расширение
.vdi). - Выделите диск левым щелчком мыши.
- Нажмите кнопку
Сжать(илиCompact) в правой части окна. - Подтвердите операцию в появившемся диалоговом окне.
- Ожидайте завершения процесса без закрытия окна.
Альтернативный способ: сжатие через экспорт
- Откройте VirtualBox и найдите нужную виртуальную машину в списке слева.
- Кликните правой кнопкой на машину и выберите
Удалить, но выберите опциюСохранить образ(не удалять данные). - Перейдите в
Файл→Менеджер виртуальных носителей. - Выберите оставшийся образ диска и нажмите
Копировать. - В окне копирования выберите формат
VDIи типДинамический. - Завершите процесс и замените старый файл диска новым (сжатым).
Часто задаваемые вопросы
Может ли сжатие диска привести к потере данных? При правильном выполнении всех шагов потери данных не будет — операция безопасна и полностью обратима.
Как узнать текущий размер файла VDI? Кликните правой кнопкой на файл диска в проводнике (Explorer на Windows или Finder на macOS), выберите Свойства и посмотрите строку Размер — это реальный размер на диске, а не логический размер ВМ.
Почему сжатие не уменьшило размер диска значительно? Возможно, внутри системы остались временные файлы, кэш или логи — повторите процесс очистки особенно внимательно, уделив внимание скрытым папкам и папке Windows\Temp.