Virtualbox автозапуск виртуальной машины в windows
Автоматический запуск виртуальной машины VirtualBox
VirtualBox – бесплатная и самая популярная программа для запуска нескольких виртуальных операционных систем во время работы одной настоящей. В некоторых ситуациях, при наличии у специализированного ПО защиты от пиратства, привязанной к аппаратной части компьютера, например, требуется запускать виртуальную машину регулярно. Но делать это вручную не удобно. О том, как настроить в VirtualBox автозапуск виртуальной машины и расскажет эта статья.
Настройка автозапуска виртуальной машины Virtualbox
Сделать это можно 3 способами:
Команда для автозапуска
Команды, настраивающей в одно действие запуск нужной виртуальной машины при старте компьютера, не существует – VirtualBox не поддерживает эту функцию. Но существует команда, запускающая виртуальную машину через командную строку.
Записывается она так: «C:\Program Files\Oracle\VirtualBox\VBoxManage.exe» startvm Win7. В кавычках указывается путь к программе-менеджеру виртуальных машин. Он входит в состав VirtualBox. Параметр «startvm» обозначает запуск виртуальной машины, а Win7 – ее название.
Ее нужно добавить в автозапуск Windows, на чем и основаны все способы автозапуска виртуальной машины в VirtualBox.
Создание ярлыка
Существует 2 способа это сделать. Первый метод простой и может использоваться в последних версиях VirtualBox. Скачать их можно с нашего сайта.
Порядок действий следующий:
Второй способ сложнее, но подходит для любой версии VirtualBox. Порядок действий следующий:
Найти файл VboxManage.exe с помощью Проводника. Записать полный путь к нему в Блокнот.
Создание задачи в Планировщике
Порядок действий для создания задания в Windows 7,8 и 10 одинаков и состоит в следующем:
VirtualBoxVmService
Для этого способа потребуется сторонняя утилита – VirtualBoxVmService. Любую из версий этой программы, включая самые новые, можно скачать на нашем сайте.
Порядок действий следующий:
Важные нюансы
Для того, чтобы осуществить автозапуск VirtualBox после первой перезагрузки нужно учесть 3 особенности:
Добавление виртуальной машины в автозапуск ОС Windows – несложная для продвинутого пользователя задача, требующая от него умения работать с командной строкой.
6.1.3 Автостарт виртуальной машины в VirtualBox при запуске системы
Настройка сервиса автозапуска виртуальной машины
Запустите терминал и выполните команду:
VBOXAUTOSTART_DB — определяет абсолютный путь к каталогу базы данных автозапуска, обычно это / etc / vbox.
VBOXAUTOSTART_CONFIG — определяет путь к конфигурации автозапуска виртуальной машины.
Настройка конфигурации автостарта, создайте файл
Содержимое файла (смените user — на вашего пользователя):
• default_policy — определяет, разрешать или запрещать автоматический запуск виртуальной машины по умолчанию. В примере выше мы отказали кому-либо в автоматическом запуске виртуальной машины и явно разрешили одному пользователю user.
• username (user) — с помощью политики запрета по умолчанию вы можете определить конкретных пользователей, которым разрешено автоматически запускать виртуальную машину (allow = trues). Вы также можете определить, как долго задерживать запуск виртуальной машины. 10 секунд используется в этой демонстрации.
Определение владельца директории базы данных автозапуска
Для определения владельца директории базы данных автозапуска выполните следующие команды:
Назначьте группе разрешения на запись в каталоге базы данных автозапуска:
Как user, вы можете включить автозапуск для отдельных машин. Для этого необходимо сначала определить путь к каталогу базы данных.
Добавление виртуальной машины в автозапуск
где redos — это UUID или имя вашей виртуальной машины.
Далее нужно создать скрипт для автозапуска машины:
Сделайте созданный файл исполняемым::
Проверьте, что файл выполняется успешно:
Пример вывода результата команды:
Виртуальная машина должна будет запуститься в virtualbox.
Далее создайте сервис, который будет использоваться для автоматического запуска виртуальной машины (смените user — на вашего пользователя):
Предоставьте необходимые права следующей командой:
Добавьте сервис в автозагрузку и запустите его:
При успешном старте сервиса проверьте virtualbox на наличие работающей машины.
При перезагрузке системы машина запустится до ввода пароля пользователя.
Для отключения автозапуска виртуальной машины выполните команды:
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.
Virtualbox автозапуск виртуальной машины в windows
Портал компьютерной помощи
на страже вашей безопасности
Телефон для связи
Автоматическая загрузка ВМ в VirtualBox 6.1 при загрузке Windows 10 в фоновом режиме
Не давал мне покоя один вопрос — как автоматически запускать в фоновом режиме виртуальную машину из VirtualBox 6.1 в случае непредвиденного отключения света или перезагрузке ОС Windows при каких-либо сбоях?
Если вопрос автоматического запуска ПК после отключении света решился простой настройкой BIOS(а), то вот запуск виртуальной машины в фоновом режиме никак был мне не понятен.
Пользовался я до недавнего времени следующим вариантом автоматического запуска ВМ:
Данный способ рабочий, но жутко раздражает открывающимся окном виртуальной машины. И в случае, если кто-то кроме вас пользуется ПК, то есть вероятность, что надоедливое окно, если не специально, то случайно — обязательно закроют. А машина должна работать 24/7. Отсюда и появился вопрос запуска ВМ в фоновом режиме после старта Windows 10.
В поиске мне попалось несколько вариантов фонового запуска с использованием сторонних разработок и программ. И описывать я их не буду. Ставить что-то еще на ПК мне, конечно же, не захотелось, поэтому поиски продолжились. И вот на каком-то из сайтов я все же нашел корректное описание автоматического запуска ВМ в фоновом режиме, коим и спешу поделиться с вами, да и оставлю заметку, чтобы самому не забыть.
Использовать для автоматического запуска ВМ в фоновом режиме мы будем часть первого описания в шапке, совместно с использованием не ярлыка, помещенного в автозагрузку, а *.bat файла. Данный *.bat файл будет запускать нашу ВМ именно в фоновом режиме сразу же после запуска ОС Windows.
Итак, поэтапно делаем следующие шаги:
Надеюсь данная статья поможет сэкономить вам достаточно времени и нервов. Отблагодарить можно по ссылке СПАСИБО!
Автоматический запуск виртуальных машин virtualbox при загрузке windows-хоста
Есть у одних моих клиентов хитрая программа, защита которой привязана к аппаратной части пк. Мы посадили эту программу на виртуальную машину virtualbox, а виртуалбокс установили на один из виндовых серверов. Все бы ничего, но при перезагрузке физического сервера приходилось логиниться на него, запускать виртуальную машину и оставлять все это добро работать в терминальной сессии. Неудобно.
Оказалось, что можно запросто организовать автоматический запуск виртуальных машин при загрузке сервера через VirtualboxVmService. Качаем программу отсюда http://sourceforge.net/projects/vboxvmservice/ Инсталлируем, чуть подправляем конфиг, перезагружаемся — и все работает (в идеале).
Нюанс: у нас установлен Virtualbox устаревшей версии. При попытке старта созданной программой службы мы получили в логе VBoxVmService.log сообщение:
Error creating VirtualBox instance! rc = 0x80004002
Погуглил. Наткнулся на предложение обновить версию VirtualboxVmService в соответствии с версией самого виртуалбокса. Догадался, что у нас с точностью до наоборот: для старой версии виртуалбокса нужен старый VirtualboxVmService. Скачал устаревшую версию и все заработало с полпинка!
Документация на VirtualboxVmService.
На всякий случай приведу перевод документации текущей версии 4.1
Шаг 1.
Убедитесь что Virtualbox установлен и ваши виртуальные машины могут стартовать с помощью менеджера virtualbox без каких либо проблем. Выключите виртуальные машины и закройте VirtualBox Manager.
ВАЖНО: Если вы хотите управлять вашей виртуальной машиной с помощью VRDP, Включите поддержку удаленного монитора в настройках display settings и определите соответствующий порт для каждой виртуальной машины индивидуально (т.е 3010 для Vm0, 3020 для Vm1, и т.д). Не используйте для этих целей стандартный порт 3389!
Шаг 2.
Скачайте и распакуйте последний релиз VBoxVmService в c:\vms.
Шаг 3
Откройте VBoxVmService.ini в любом текстовом редакторе и отредактируйте под ваши нужды. Этот файл содержит пример установки с двумя виртуальными машинами.
[Vm1]
VmName=winxp Как в можете видеть значения ниже почти повторяются для каждой [VmX]-секции файла
ShutdownMethod=acpipowerbutton
AutoStart=no Эта VM не будет стартовать автоматически.
##############################################################################
#
# ЧАСТЬ II — INSTALLATION
#
##############################################################################
Шаг 1. (для WINXP / SERVER2003) Запустите CMD (Командная строка) из вашего старт меню.
Шаг 1. (для VISTA / SERVER2008 / WIN7) Кликните правой кнопкой мыши по CMD (командная строка) и выберете «Запуск от имени администратора» в контекстном меню.
Step 2. Инсталируйте сервис. В терминальном окне наберите:
cd C:\vms [ENTER]
Шаг 3. Перезагрузите вашу систему.
Если все сделано правильно, вы сможете подключиться к вашей VM с помощью VRDP клиента (или ssh клиента, если вы сконфигурировали ssh сервер внутри вашей VM). Если нет то обратитесь к секции TROUBLESHOOTING которая расположена ниже для отладки.
##############################################################################
#
# ЧАСТЬ III — UNINSTALL
#
##############################################################################
Автозапуск виртуальной машины VirtualBox
Если вы запускаете виртуальные машины VirtualBox на сервере, то скорее всего, захотите, чтобы они оставались запущенными даже после неожиданной перезагрузки сервера.
В этой небольшой статье мы рассмотрим как настроить автозапуск виртуальной машины VirtualBox с помощью системы инициализации systemd, которая сейчас используется повсеместно.
Автозапуск виртуальной машины в VirtualBox
Давайте создадим файл юнита, который будет управлять автозагрузкой. Для этого выполните такую команду:
В открывшемся редакторе вставьте такой текст:
С помощью этого юнита мы и будем делать автозапуск virtualbox linux. В этом примере я запускаю виртуальную машину от имени пользователя root, но вам нужно запускать её от того пользователя, к которому добавлены виртуальные машины и от имени которого VirtualBox обычно работает.
Сохраните изменения в файле и выполните следующую команду, чтобы система инициализации перечитала конфигурационные файлы с диска:
В нашем юнит файле мы предусмотрели возможность использования параметра, в котором передается имя или UUID идентификатор виртуальной машины. Если в имени машины есть пробел, то лучше использовать UUID, а иначе можно и имя.
Смотрим список виртуальных машин:
VBoxManage list vms
Теперь давайте запустим машину Ubutnu1804 с UUID ed0ce7dd-0ddb-46bf-913c-876671c4d1f1 с помощью systemd:
sudo systemctl start vbox@ed0ce7dd-0ddb-46bf-913c-876671c4d1f1
Если во время запуска произошла ошибка, вы можете посмотреть её выполнив:
В данном случае машина уже была запущена. Я остановил её и запустил ещё раз с уже помощью systemd. Смотрим статус виртуальной машины:
sudo systemctl status vbox@ed0ce7dd-0ddb-46bf-913c-876671c4d1f1
Если всё хорошо, то всё, что нам осталось, это добавить этот сервис в автозагрузку:
sudo systemctl enable vbox@ed0ce7dd-0ddb-46bf-913c-876671c4d1f1
Выводы
В этой статье мы разобрались как делается автозагрузка виртуальной машины virtualbox. Как видите, всё очень просто и удобно. Теперь ваши виртуальные машины будут всегда запущены.
Нет похожих записей
Оцените статью:
Об авторе
Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.
9 комментариев
добрый день сделал все как у вас, но при перезагрузки не запускается что может быть не подскажите?
Почему, после того, как я перенес систему с HDD на SSD виртуальная машина перестала автоматически запускаться?
Скорее всего сменился UUID
класс
работает
СПС
Спасибо за статью, очень пригодилось. Ещё нашёл в интернетах, что в ExecStop можно вместо acpipowerbutton указать savestate
В таком случае вместо выключения виртуальной машины, будет выполнено сохранение текущего состояния.
Все уже придумано ораклом, перевод выдержки из официального мануала:
9.21. Запуск виртуальных машин во время загрузки системы
Вы можете запускать виртуальные машины автоматически во время загрузки системы на платформах Linux, Oracle Solaris и Mac OS X для всех пользователей.
9.21.1. Linux: запуск службы автозапуска с помощью init
# Бобу разрешено запускать виртуальные машины, но запуск
# будет отложен на 10 секунд
bob = <
allow = true
startup_delay = 10
>
# Алисе не разрешено запускать виртуальные машины, полезно для исключения определенных пользователей
# если политика по умолчанию разрешена.
alice = <
allow = false
>
Любой пользователь, который хочет включить автозапуск для отдельных компьютеров, должен указать путь к каталогу базы данных автозапуска с помощью следующей команды:
VBoxManage setproperty autostartdbpath каталог_автозапуска
8.8.9. Автозапуск виртуальных машин во время загрузки хост-системы
Эти параметры настраивают функцию автозапуска виртуальной машины, которая автоматически запускает виртуальную машину при загрузке хост-системы. Обратите внимание, что есть предварительные условия, которые необходимо выполнить перед использованием этой функции. См. Раздел 9.21, «Запуск виртуальных машин во время загрузки системы».
—autostart-enabled on | off: включает и отключает автозапуск виртуальной машины при загрузке хост-системы с использованием указанного имени пользователя.
—autostart-delay : указывает задержку в секундах после загрузки хост-системы перед автозапуском виртуальной машины.
при опросе статуса
вьідает такое
вер 07 18:45:46 serv1vvc systemd[1]: Started vbox@VM_1.service.
вер 07 18:46:54 serv1vvc systemd[1]: /etc/systemd/system/vbox@.service:1: Assig>
вер 07 18:46:54 serv1vvc systemd[1]: /etc/systemd/system/vbox@.service:2: Assig>
вер 07 18:46:54 serv1vvc systemd[1]: /etc/systemd/system/vbox@.service:3: Assig>
вер 07 18:47:14 serv1vvc systemd[1]: /etc/systemd/system/vbox@.service:1: Assig>
вер 07 18:47:14 serv1vvc systemd[1]: /etc/systemd/system/vbox@.service:2: Assig>
вер 07 18:47:14 serv1vvc systemd[1]: /etc/systemd/system/vbox@.service:3: Assig>
вер 07 19:11:59 serv1vvc systemd[1]: /etc/systemd/system/vbox@.service:1: Assig>
вер 07 19:11:59 serv1vvc systemd[1]: /etc/systemd/system/vbox@.service:2: Assig>
вер 07 19:11:59 serv1vvc systemd[1]: /etc/systemd/system/vbox@.service:3: Assig>
lines 1-17/17 (END)