Понадобилось настроить на компьютере с windows 7 виртуальную машину на virtualbox и запускать ее автоматически после загрузки операционной системы. Задача простая, но сразу готового решения не нашлось, пришлось испробовать разные способы.
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
В интернете самый популярный способ это использовать программу VBoxVmService. Я установил, проверил, вроде работает. Мне необходимо было настроить несколько подобных систем. Во время настройки версия virtualbox обновилась и с новой версией указанная выше программа перестала работать. Да и в целом заметил, что она не всегда запускала виртуальные машины. Еще один ее минус - после запуска виртуальная машина запускалась как служба в фоне, к ней нельзя было обратиться. При запуске консоли управления виртуальными машинами Oracle VM VirtualBox, запущенная виртуалка засыпала.
Стал искать другое решение. Оно оказалось очень простым и не требовало никаких дополнительных средств. Просто создаем батник:
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm vm-name
и добавляем его в автозагрузку пользователя. vm-name - имя виртуальной машины для запуска.
Нужно понимать один нюанс. С программой VBoxVmService виртуальная машина запускается как сервис даже без логина пользователя в систему. Батник срабатывает только после входа пользователя в систему. Так как у меня был автологин пользователя, то мне подходил вариант с bat файлом. Мне так даже удобно было. После запуска сразу консоль виртуальной машины доступна на рабочем столе.
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Есть вариант через планировщик заданий делать проверку запущена ли VM и потом запускать батик включения VM, а так же при запуске ОС.
Осталось еще узнать команду ,чтоб виртуалка ВЫКЛЮЧАЛАСЬ сама, при выключении хоста.
Если добавить параметр "--type headless", то виртуальная машина хорошо запускается в фоне без графического окна вообще. При этом её можно открыть через VirtualBox и при надобности снова свернуть в фон.
Батник будет выглядить так:
Его можно добавить в планировщик задач и запускать как нравится: хоть при входе пользователя, хоть при запуске системы. Очень удобно и гибко.
Спасибо за информацию.
здравствуйте, не много не по теме, вопрос такой, как сделать так, чтобы работали одновременно 2-3 и более виртуальных машин на VM?
сейчас запускаю одну машину не важно какую она работает, пытаюсь запустить параллельно вторую пишет ошибку
Locking of attached media failed. A possible reason is that one of the media is attached to a running VM.
Код ошибки: VBOX_E_INVALID_OBJECT_STATE (0x80BB0007)
Компонент: SessionMachine
Интерфейс: IMachine {85632c68-b5bb-4316-a900-5eb28d3413df}
точного ответа пока не нашел в инете, мб вы подскажите? буду благодарен
Судя по тексту, вы подключаете к виртуальной машине какой-то объект, который уже используется в другой. Может диск один и тот же назначаете? Я не использую последнее время virtualbox, трудно что-то посоветовать конкретно.
для запуска в фоне можно использовать
c:\......\VBoxHeadless.exe -s "6a9ca1ca-d5a8-42ce-8de7-449318ce5f75"
Спасибо за полезную информацию.
Добрый день.
У самого недавно появилась такая же задача, но к помощи стороннего ПО я не прибегал. В свежих версиях VirtualBox можно создать ярлык виртуальной машины на рабочем столе, а уже его поместить в автозагрузку.
У меня на Win 8.1 здесь C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp лежит ярлык запуска виртуальной машины.
В свойствах самого ярлыка можно в поле объекта увидеть и команду запуска непосредственно этой машины: "C:\Program Files\Oracle\VirtualBox\VirtualBox.exe" --comment "Ubuntu server" --startvm "6a9ca1ca-d5a8-42ce-8de7-449318ce5f75", которую можно засунуть хоть в батник, хоть в реестр.
Спасибо большое!
Всё как всегда, всё просто до смеху... Молодец Иван, остановил меня от изобретения "очередного велосипеда" :))
Спасибо!
ах да забыл cmdow @ /HID - прячет выпонение окна бантика с помощью утилиты cmdow.exe
Сам нашел как сделать, если кому надь
Скачиваете утилиту nircmd, в ее справке еще скачиваете утилиту WinExplorer, с помощью которой определяете class запущенного окна программы которую надо свернуть (в большом окне WinExplorer находите свою запущенную программу, а ниже, примерно посередине, смотрите Class: копируете эту информацию и вставляете в строку в bat. Утилиту nircmd.exe положить в system32.
Пример:
cmdow @ /HID
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm Server-2
"nircmd.exe" win min class "Qt5QWindowIcon"
Спасибо за полезную информацию.
Эт все замечательно, еще бы хотелось чтоб в панель задая сворачивалась, ась?
Хороший вариант. Жаль, что как сервис так не запускается.
Можно попробовать приведенную мной программу VBoxVmService. В целом, она работала на тот момент, когда я проверял.