🌐 Ваш IP: 216.73.217.169 👥 Сейчас на сайте: 249

Как запустить виртуальную машину в virtualbox при загрузке системы

Способ автозапуска зависит от операционной системы вашего хост-сервера (где установлен сам VirtualBox) — Windows или Linux.

Ниже приведены самые надежные решения для обеих ОС.

Вариант 1: Если сервер на Windows

Для запуска без входа пользователя в систему (headless-режим) лучше всего использовать Планировщик заданий (Task Scheduler).

Шаг 1. Проверьте точное имя ВМ

Откройте командную строку и выполните:

cmd

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" list vms

Запомните точное имя вашей виртуальной машины (например, "Ubuntu-Server").

Шаг 2. Настройка в Планировщике заданий

    1. Нажмите Win + R, введите taskschd.msc и нажмите Enter.
    2. Справа выберите «Создать задачу...» (Create Task), а не «простую задачу».
    3. Вкладка Общие (General):
      • Имя: например, Autostart VM Ubuntu.
      • Установите переключатель: «Выполнять для всех пользователей» (Run whether user is logged on or not).
      • Поставьте галочку: «Выполнить с наивысшими правами» (Run with highest privileges).
      • Укажите пользователя, под которым создана ВМ (или Администратора).
    4. Вкладка Триггеры (Triggers):
      • Нажмите «Создать» (New).
      • Начать задачу: «При запуске» (At startup).
      • (Рекомендуется) Поставить галочку «Отложить задачу на» (Delay task for) — 30 секунд или 1 минуту (чтобы службы VirtualBox и сеть успели полностью инициализироваться).
    5. Вкладка Действия (Actions):
      • Нажмите «Создать» (New).
      • Действие: «Запуск программы» (Start a program).
      • Программа или сценарий:

text

C:\Program Files\Oracle\VirtualBox\VBoxManage.exe
                     
                     Добавить аргументы:
text

startvm "Имя_Вашей_ВМ" --type headless

(Параметр --type headless запускает машину в фоновом режиме без открытия графического окна, что необходимо для работы до входа пользователя).
               
             6. Нажмите ОК, при запросе введите пароль учетной записи Windows.

Вариант 2: Если сервер на Linux (Ubuntu / Debian / Alma / CentOS)

В современных дистрибутивах Linux проще и надежнее всего сделать службу systemd.

  1. Создайте файл службы:

    bash

    sudo nano /etc/systemd/system/vbox-autostart.service

  2. Вставьте конфигурацию (замените YOUR_USER на вашего пользователя Linux, а VM_NAME — на имя ВМ):

    ini
    [Unit]
    Description=VirtualBox VM Autostart
    After=network.target vboxdrv.service
    [Service]
    Type=forking
    User=YOUR_USER
    ExecStart=/usr/bin/VBoxManage startvm "VM_NAME" --type headless
    ExecStop=/usr/bin/VBoxManage controlvm "VM_NAME" acpipowerbutton
    TimeoutStopSec=60
    RemainAfterExit=yes
    [Install]
    WantedBy=multi-user.target

    (Команда ExecStop гарантирует, что при перезагрузке или выключении сервера виртуальная машина корректно завершит работу через ACPI, а не "выдернется из розетки").

  3. Примените и включите автозапуск службы:

    bash

    sudo systemctl daemon-reload sudo systemctl enable vbox-autostart.service

admin100

No module Published on Offcanvas position