🔧 1: Убедитесь, что VirtualBox установлен
# Проверка установки VirtualBox vboxmanage --version # Если не установлен — установите:
sudo apt update
sudo apt install virtualbox virtualbox-ext-pack
💡 VirtualBox Extension Pack нужен для USB 2.0/3.0, RDP, шифрования дисков и других расширенных функций.
Создайте новую ВМ
sudo -u User VBoxManage createvm \
--name HomeAssistant \
--basefolder /home/User/haos \
--ostype Other \
--register
Что произойдёт:
- Создастся папка /home/User/haos/HomeAssistant/.
- Появится файл конфигурации HomeAssistant.vbox.
- ВМ зарегистрируется в VirtualBox.
Добавьте SATA‑контроллер
sudo -u User VBoxManage storagectl HomeAssistant \
--name "SATA Controller" \
--add sata \
--controller IntelAhci
Пояснения:
- --name "SATA Controller" — имя контроллера (можно другое, но используйте его дальше).
- --add sata — тип интерфейса.
- --controller IntelAhci — чипсет контроллера.
Подключите существующий диск
sudo -u User VBoxManage storageattach HomeAssistant \
--storagectl "SATA Controller" \
--port 0 \
--device 0 \
--type hdd \
--medium "/home/user/haos/haos_ova-16.3.vdi"
Важно:
- Путь к .vdi должен быть абсолютным и точным.
- --storagectl должно совпадать с именем контроллера
Настройте параметры ВМ
sudo -u User VBoxManage modifyvm "HomeAssistant" \
--memory 8192 \
--cpus 2 \
--firmware efi \
--boot1 disk \
--nic1 bridged \
--bridgeadapter1 enp3s0 \
--vram 128 \
--usb on \
--usbehci on \
--clipboard bidirectional \
--draganddrop bidirectional
Проверка параметров:
sudo -u User VBoxManage showvminfo HomeAssistant | grep -E "Memory|CPUs|Firmware|Boot|NIC|VRAM|USB"
Проверьте подключение диска
VBoxManage showvminfo HomeAssistant | grep "SATA Controller"
В выводе должно быть:
SATA Controller (1 port, 1 device attached) IDE/SATA: #0 (SATA, 0, 0) /home/user/haos/haos_ova-16.3.vdi
Измените права доступа к файлу .vdi
Выполните команду:
sudo chmod 664 /home/user/haos/haos_ova-16.3.vdi
sudo chown user:user /home/user/haos/haos_ova-16.3.vdi
Это даст пользователю user полный доступ к файлу, а также позволит VirtualBox корректно работать с ним.
Запустите ВМ
VBoxManage startvm HomeAssistant --type headless
- --type headless — запуск без графического интерфейса (для серверов).
Проверьте регистрацию VM
sudo -u user VBoxManage list vms
Вы должны увидеть что-то вроде:
"HomeAssistant" {12345678-1234-1234-1234-123456789abc}
Если вы видите её — значит, VM успешно зарегистрирована.
🔧 10: Дождитесь загрузки и найдите IP
Как найти IP-адрес Home Assistant после запуска?
Как только VM загрузится:
1. Откройте веб-браузер и перейдите по адресу:
👉 `http://[IP]:8123`
Где `[IP]` — это IP, который получила VM в вашей сети (через DHCP).
2. Если вы не знаете IP, можно просканировать сеть:
sudo nmap -sn 192.168.1.0/24
Найдите MAC-адрес VirtualBox (`08:00:27:...`) и соответствующий ему IP.
Ниже — полный набор команд для настройки автоматического запуска виртуальной машины с Home Assistant при старте Debian.
Шаг 1. Убедитесь, что ВМ зарегистрирована в VirtualBox
VBoxManage registervm /home/kvictor/haos/HomeAssistant/HomeAssistant.vbox
Проверка:
VBoxManage list vms
В выводе должна быть строка: "HomeAssistant" {UUID}.
Шаг 2. Создайте systemd‑сервис для автозапуска
Откройте редактор:sudo nano /etc/systemd/system/homeassistant.service
Вставьте содержимое (настройте под свой путь и пользователя):
[Unit]
Description=VirtualBox VM - HomeAssistant
After=network.target virtualbox.service
Requires=virtualbox.service
[Service]
Type=simple
User=user
Group=vboxusers
ExecStart=/usr/bin/VBoxManage startvm HomeAssistant --type headless
ExecStop=/usr/bin/VBoxManage controlvm HomeAssistant savestate
Restart=on-failure
RestartSec=10
TimeoutStartSec=120
[Install]
WantedBy=multi-user.target
Пояснения:
User=user — пользователь, от имени которого запускается ВМ;
ExecStart — команда запуска ВМ в фоновом режиме;
TimeoutStartSec=120 — ждать до 2 мин старта ВМ;
Restart=on-failure — перезапуск при сбое.
Сохраните файл (Ctrl+O → Enter → Ctrl+X).
Шаг 3. Настройте зависимости (если нужно)
Если virtualbox.service не существует, создайте его:
Откройте файл:sudo nano /etc/systemd/system/virtualbox.service
Вставьте:
[Unit]
Description=VirtualBox kernel module
After=network.target
[Service]
Type=oneshot
ExecStart=/sbin/vboxconfig
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
Активируйте:
sudo systemctl enable virtualbox.service sudo systemctl start virtualbox.service
Шаг 4. Активируйте и запустите сервис
Перезагрузите systemd:sudo systemctl daemon-reexec
Включите автозапуск сервиса:
sudo systemctl enable homeassistant.service
Запустите сервис вручную (проверка):
sudo systemctl start homeassistant.service
Проверьте статус:Ожидаемый статус: active (running).
sudo systemctl status homeassistant.service
Шаг 5. Проверьте, что ВМ работает
Список запущенных ВМ:В выводе должна быть HomeAssistant.VBoxManage list runningvms
Проверьте IP‑адрес ВМ (если нужен доступ):
VBoxManage guestproperty get HomeAssistant "/VirtualBox/GuestInfo/Net/0/V4/IP"
Посмотрите лог ВМ на ошибки:
cat /home/kvictor/haos/HomeAssistant/Logs/VBox.log
Шаг 6. Проверьте автозапуск после перезагрузки
Перезагрузите сервер:sudo reboot
После загрузки проверьте:статус сервиса:
sudo systemctl status homeassistant.service
список запущенных ВМ:
VBoxManage list runningvms