Гид по технологиям

Как конвертировать VMDK между growable и preallocated в VMware

6 min read Виртуализация Обновлено 14 Dec 2025
Конвертация VMDK: growable ↔ preallocated в VMware
Конвертация VMDK: growable ↔ preallocated в VMware

Иллюстрация логотипа VMware и виртуальной машины

Короткое объяснение

  • Growable (растущий) диск: файл VMDK сначала маленький и увеличивается по мере записи данных. Экономит место на хосте, но в некоторых сценариях медленнее.
  • Preallocated (предвыделённый) диск: сразу занимает весь объявленный объём на хосте. Обеспечивает стабильную производительность и предсказуемое распределение пространства.

Важно: VMware Player не включает инструменты для преобразования типов дисков — для этого нужен VMware Fusion или VMware Workstation.

Когда стоит менять тип диска

  • Перейти на preallocated, если нужна максимальная производительность и вы готовы выделить место заранее.
  • Перейти на growable, если место на хосте ограничено и вы хотите экономить дисковый объём.
  • Нельзя менять диск, если виртуальная машина включена или находится в состоянии приостановки (suspended).

Внимание: если у виртуальной машины есть snapshot’ы, преобразование не будет работать — сначала удалите снимки или сделайте полную резервную копию.

VMware Fusion (macOS)

В VMware Fusion процесс самый простой — всё доступно в графическом интерфейсе.

  1. Полностью выключите виртуальную машину. Нельзя вносить изменения при включённом или приостановленном состоянии.
  2. В основном окне VMware Fusion выберите виртуальную машину и откройте Virtual Machine → Settings.

Выбор виртуальной машины и настройки в VMware Fusion

  1. В окне Settings выберите раздел «Hard Disk» в группе Removable Devices.

Настройки диска в VMware Fusion: выбор раздела

  1. Если появится сообщение о наличии snapshot’ов (снимков), удалите их через Virtual Machine → Snapshots → Snapshots перед продолжением.

Окно предупреждения о снимках — удалите snapshot'ы перед изменением

  1. В окне Snapshots выберите каждый снимок и нажмите Delete в панели инструментов.

Удаление snapshot'ов в VMware Fusion

  1. В разделе Hard Disk раскройте Advanced options и поставьте или снимите флажок Pre-allocate disk space, чтобы конвертировать диск в preallocated или обратно в growable. Нажмите Apply для сохранения изменений.

Опция

Советы по Fusion:

  • После преобразования запустите виртуальную машину и проверьте корректность загрузки и целостность данных.
  • Если вы удалили snapshot’ы, вы утратите возможность откатиться к этим точкам восстановления.

VMware Workstation (Windows / Linux)

В VMware Workstation нет GUI-опции для конвертации типа диска — используйте утилиту vmware-vdiskmanager. На Windows она поставляется как vmware-vdiskmanager.exe.

Шаг 1 — Отключите виртуальную машину и удалите снимки

Полностью выключите виртуальную машину. В меню VM → Snapshot (или VM → Snapshot → Snapshot) правой кнопкой мыши по каждому снимку выберите Delete. После удаления снимков вы потеряете возможность отката.

Удаление snapshot'ов в VMware Workstation

Шаг 2 — Найдите утилиту vmware-vdiskmanager.exe

На Windows утилита обычно находится в одной из папок установки VMware Workstation:

C:\Program Files (x86)\VMware\VMware Workstation

или

C:\Program Files\VMware\VMware Workstation

Папка установки VMware Workstation с утилитой vmware-vdiskmanager.exe

Откройте Командную строку (Command Prompt) и перейдите в каталог с vmware-vdiskmanager.exe, например:

cd "C:\Program Files (x86)\VMware\VMware Workstation"

На Linux откройте терминал и выполните vmware-vdiskmanager как обычную команду.

Окно командной строки Windows, переход в каталог VMware

Шаг 3 — Найдите основной .vmdk файл виртуальной машины

Откройте папку виртуальной машины. По умолчанию это:

C:\Users\ИМЯ\Documents\Virtual Machines\

Найдите главный .vmdk (обычно он имеет имя виртуальной машины, например “Windows 7.vmdk”). Игнорируйте вторичные файлы, которые содержат в имени -s001, -s002 и т. п.

Папка виртуальной машины с основным файлом .vmdk

Если не уверены, путь к папке виртуальной машины показывается внизу окна VMware Workstation.

Путь к папке виртуальной машины отображается внизу окна VMware Workstation

Шаг 4 — Создаём новый VMDK нужного типа

Утилита vmware-vdiskmanager создаёт новый VMDK на основе исходного. Команда для конвертации исходного файла в растущий (growable) диск, разбитый на 2 ГБ файлы, выглядит так:

vmware-vdiskmanager.exe -r "c:\path\to\source.vmdk" -t 1 "c:\path\to\target.vmdk"

Пример:

vmware-vdiskmanager.exe -r "C:\Users\chris\Documents\Virtual Machines\Windows 7\Windows 7.vmdk" -t 1 "C:\Users\chris\Documents\Virtual Machines\Windows 7\Windows 7-growable.vmdk"

Чтобы конвертировать в preallocated диск (предвыделённый) с разбивкой по 2 ГБ, используйте тип 3:

vmware-vdiskmanager.exe -r "c:\path\to\source.vmdk" -t 3 "c:\path\to\target.vmdk"

Пример:

vmware-vdiskmanager.exe -r "C:\Users\chris\Documents\Virtual Machines\Windows 7\Windows 7.vmdk" -t 3 "C:\Users\chris\Documents\Virtual Machines\Windows 7\Windows 7-preallocated.vmdk"

Пример выполнения vmware-vdiskmanager в командной строке

Примечания:

  • Ключ -r указывает создать новый диск на основе исходного.
  • Параметр -t задаёт тип таргета: 1 — growable с разбивкой на 2 ГБ, 3 — preallocated с разбивкой на 2 ГБ.

Шаг 5 — Удалите или переместите оригинальные файлы .vmdk

Утилита создаёт новую копию диска, она не перезаписывает оригинал. В папке виртуальной машины вы увидите и старые, и новые файлы. Удалите старые файлы .vmdk (включая основной Windows 7.vmdk), либо переместите их в другую папку как резервную копию. Не удаляйте другие служебные файлы виртуальной машины.

Папка с оригинальными и новыми vmdk файлами — удалите старые .vmdk или сохраните их как резервную копию

Шаг 6 — Переименуйте новый главный .vmdk в имя оригинала

Переименуйте созданный основной .vmdk (например, Windows 7-growable.vmdk) в имя оригинального файла (Windows 7.vmdk). Оставшиеся -s00x файлы не обязательно переименовывать — главный .vmdk указывает на них.

Переименование нового vmdk в имя оригинального файла

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

Проверка и отладка

  • При загрузке проверяйте логи VMware и целостность данных ОС гостя.
  • Если виртуальная машина не загружается, восстановите оригинальные .vmdk из резервной копии и повторите процесс.

Решение типичных проблем

  • Ошибка: “Cannot perform operation while snapshot exists” — удалите все snapshot’ы.
  • Ошибка доступа/прав: запустите командную строку или терминал от администратора/с sudo.
  • Мало места на хосте при конвертации в preallocated — убедитесь, что на диске хоста достаточно свободного пространства для всего объёма.

Решения и альтернативы

  • Если не хотите возиться с vmware-vdiskmanager, можно создать новую виртуальную машину нужного типа диска и перенести данные через образ/клонирование внутри гостевой ОС.
  • Для массовой автоматизации используйте скрипты PowerShell/Bash, вызывающие vmware-vdiskmanager для набора VM.

Шаблон проверки (Role-based checklist)

Администратор перед началом:

  • Убедился в наличии резервной копии папки виртуальной машины.
  • Выключил виртуальную машину (не suspend).
  • Удалил все snapshot’ы или экспортировал их отдельно.
  • Проверил свободное место на хосте (для preallocated достаточно места).
  • Запустил конвертацию и сохранил лог выполнения.

Пользователь после конвертации:

  • Запустил гостевую ОС и проверил служебные приложения.
  • Проверил доступность данных и запуска приложений.
  • Убедился в отсутствии ошибок в логах VMware.

Минимальная методология безопасности и отката

  1. Сделать полную копию папки виртуальной машины (быстрый бэкап).
  2. Удалить snapshot’ы и зафиксировать изменения в журнале.
  3. Выполнить конвертацию в тестовой среде при возможности.
  4. Переименовать и запустить VM, проверить загрузку.
  5. При ошибках вернуть исходные файлы из бэкапа.

Риск-матрица и меры смягчения

  • Риск: Потеря снимков → Мера: Сделать резервную копию перед удалением.
  • Риск: Нехватка места при создании preallocated → Мера: Проверить диск хоста и освободить/увеличить пространство.
  • Риск: Неправильный выбор файла .vmdk → Мера: Всегда работайте с основным (.vmdk без -s00x) и сохраняйте резервные копии.

Краткий словарь терминов

  • VMDK: формат виртуального диска VMware.
  • Snapshot (снимок): состояние виртуальной машины в конкретный момент времени.
  • Preallocated: диск, которому заранее выделено всё пространство.
  • Growable: диск, который увеличивает свой размер по мере записи данных.

Когда этот способ не подойдёт

  • Вы используете VMware Player — там нет vmware-vdiskmanager для конвертации.
  • У вас ограничены права на хосте и нет доступа для запуска команд от администратора.
  • У вас критичные snapshot’ы, которые нельзя удалять — тогда нужно клонировать VM вместо конвертации.

Итог

Преобразование VMDK между growable и preallocated в VMware безопасно и обычно предсказуемо, если следовать инструкции: выключить VM, удалить снимки, создать новый диск через GUI (Fusion) или vmware-vdiskmanager (Workstation), затем заменить старые файлы и проверить загрузку. Всегда имейте резервную копию перед операцией.

Важно: выбирайте preallocated, если нужна стабильная производительность, и growable, если важна экономия места на хосте.

Сводка действий:

  • Остановите VM → Удалите snapshot’ы → Сделайте бэкап → Конвертируйте через GUI или vmware-vdiskmanager → Удалите/переместите старые .vmdk → Переименуйте новый файл в имя оригинала → Запустите VM и проверьте.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро