User Tools

Site Tools


vmware_workstation

VMWare Workstation

Автоматический запуск виртуальных машин

В VMWare Workstation для Windows существует возможность запускать виртуальные машины в автоматическом режиме без входа пользователя.

1) В первую очередь следует настроить службу VMware Autostart Service в режим запуска Auto.

:!: Необходимо учесть, что запускаться виртуальные машины будут в том контексте, в котором стартует служба VMware Autostart Service. Если оставить вариант по умолчанию (local system), то под интерактивной учетной записью пользователя мы не увидим машин, запущенных в GUI VMWare. Поэтому, если нам требуется управление виртуальными машинами оттуда - необходимо запустить службу от имени пользователя, который будет управлять машинами в интерактивном режиме.

2) В VMWare кликаем ПКМ на My Computer и выбираем опцию Configure Auto Start VMs. Далее отмечаем нужные виртуальные машины и настраиваем их приоритет загрузки.

:!: Внутри сеанса пользователя будет видно, что виртуальные машины запущены, ими можно будет управлять. Однако, т.к. виртуальная машина была запущена до интерактивного входа пользователя - её дисплей будет недоступен. В этом случае можно выполнить операцию suspendresume.


Сохранённый пароль зашифрованной виртуальной машины

Если мы сохранили пароль зашифрованной машины и VMWare Workstation больше не спрашивает креды, а нам требуется изменить это поведение, то нам следует удалить сохраненные данные из Windows Credential Manager.

Они имеют приблизительно следующий вид.


Расшифровка отдельных файлов зашифрованной виртуальной машины

Предположим, мы удалили файлы второго диска (без полезных данных) зашифрованной виртуальной машины, из-за чего VM перестает загружаться, а также не даёт расшифровать себя через штатную функцию decrypt.

В этом случае нам может помочь редактирование конфигурационного файла VM (имеющего расширение *.vmx). В этом файле можно вручную удалить все упоминания несуществующего более диска.

:!: Однако, если VM зашифрована, её VMX файл будет также зашифрован.

В решении этой проблемы нам поможет Python-скрипт, который умеет дешифровывать и шифровать ОТДЕЛЬНЫЕ файлы VMWare.

Страница проекта: https://github.com/RF3/VMwareVMX

Перед использованием установим Python и нужные модули:

 pip install pycryptodome

Расшифровать VMX файл можно следующим образом (пароль скрипт запросит после выполнения команды):

  .\main.py "C:\VMWare\W11_recuv\Windows 11 x64.vmx" >> C:\pyth\decr.vmx

Теперь ищем секции, в которых есть упоминание диска, который мы хотим удалить, вырезаем их и сохраняем конфиг.

Пример секции:

nvme0:0.mode = "independent-persistent"
nvme0:0.present = "TRUE"

После правки конфига необходимо зашифровать исправленный файл (тем же паролем) и скопировать в директорию зашифрованной машины вместо старого файла. Шифруем скриптом с указанием пароля:

  ./main.py -e -p test1234 "C:\pyth\decr3.vmx" "C:\pyth\encr4.vmx"

Если всё сделано верно, виртуальная машина распознает новый зашифрованный файл конфигурации, а для загрузки больше не будет требовать наличие второго диска.


Оптимизация работы VMWare Workstation под Windows

1. Отключение HYPER-V и любых его компонентов.

Отключить core isolation, весь virtualization based security.

Рекомендация VMWare по этому поводу.

Отключить все компоненты, связанные с виртуализацией.

Дополнительно может потребоваться отключение гипервизора через командную строку:

 bcdedit /set hypervisorlaunchtype off Reboot

Также, необходимо отключить Credential Guard через GPO:

Computer Configuration > Administrative Templates > System > Device Guard > Turn on Virtualization Based Security -> Disable

Посмотреть состояние гипервизора и virtualization-based security можно через утилиту System Information на странице System Summary. Пример:

2. Может помочь запуск VMWare от имени администратора.

3. Запретить хостовой системе тротлинг процессора для приложения VMWare:

 powercfg /powerthrottling disable /path "C:\Program Files (x86)\VMware\VMware Workstation\x64\vmware-vmx.exe"

Нельзя просто так взять и скачать VMWare Workstation

Статья как скачать VMWare Workstation for personal use с сайта BroadCom:

https://www.pcworld.com/article/2388668/vmware-workstation-pro-how-to-install-the-free-professional-tool.html


MSI rollback is currently disabled

При попытке обновить VMWare Tools иногда можно нарваться на ошибку с таким заголовком. В этом случае придется поправить параметр в реестре, меняющий поведение установщика msi. Вот данный ключ:

 HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer\DisableRollback (0)


Конвертация VM VMWare Workstation в HYPER-V

Основная суть процесса конвертации: нужно преобразовать vmdk-диск в vhdx-диск, а затем создать новую виртуальную машину в HYPER-V, использовав сконвертированный диск в качестве диска новой VM.

В случае, если при создании VM в VMWare мы делили диск на несколько - необходимо сначала слить их в единый vmdk-файл, а затем переходить к конвертации.

:!: Перед слиянием и конвертацией - лучше всего удалить с исходной VM VMWare Tools, чтобы виртуальная машина работала в новой среде виртуализации без ошибок, а затем выполнять дальнейшие шаги.

Слияние нескольких vmdk в один

Если нам нужно слить несколько vmdk в один - можно воспользоваться встроенной в VMWare Workstation утилитой vmware-vdiskmanager.exe, скормить ей только исходный ОСНОВНОЙ vmdk-файл виртуальной машины, а также директорию и название файла-назначения, в который смёрджатся исходные файлы. Утилита сама обнаружит остальные файлы vmdk и объединит их.

cd "C:\Program Files (x86)\VMware\VMware Workstation"
./vmware-vdiskmanager.exe -r "C:\VMWare\source_vm\vm.vmdk" -t 0 "C:\VMMerge\destination.vmdk"

Конвертация полученного vmdk в vhdx

С конвертацией хорошо справится утилита qemu-img.

Загрузить можно по ссылке: https://cloudbase.it/qemu-img-windows/

Использовать её довольно просто: мы указываем исходный vmdk-файл плюс файл назначения vmdx. Пример:

 ./qemu-img.exe convert "C:\VMMerge\source.vmdk" -O vhdx "C:\HYPER-V\VM\destination.vhdx" -p

Дожидаемся конца операции преобразования, затем создаем новую VM HYPER-V с полученным файлом диска.

:!: Если мы не удалили VMWare Tools, то есть два способа это сделать (обычный uninstaller из программ не срабатывает).

1. Запустить из ISO-образа VMWare Tools сетап следующим образом:

 ./setup64.exe /c

Скачать ISO необходимой версии можно отсюда: https://packages.vmware.com/tools/

2. Воспользоваться специальным скриптом, удаляющим VMWare Tools:

https://gist.github.com/broestls/f872872a00acee2fca02017160840624

vmware_workstation.txt · Last modified: 2024/12/09 12:16 by jp