при запуске виртуального vm с использованием sudo он не может найти виртуальные машины

Я создал 2 виртуальных машины с помощью VirtualBox, и я могу начать их отлично, как мой собственный пользователь, используя следующую команду:

vboxmanage startvm myVM -type headless

, но когда я пытаюсь выполнить ту же команду с sudo или в службе systemd, он возвращает, что он не может найти виртуальную машину.

Я узнал об этом

. Это терпит неудачу, потому что вы используете sudo. VirtualBox предназначен для запуска любым пользователем (в группе vboxusers), и sudo запускает команду в качестве пользователя root, чья конфигурация VirtualBox пуста.

Но я просто не знаю, как это сделать, когда вы запускаете как root (с sudo), чтобы иметь настройки виртуального бокса.

Любая идея?

0
задан 19 May 2018 в 17:45

3 ответа

Чтобы запустить виртуальную машину при входе в систему и остановить ее при выходе из системы, вы можете использовать системные юниты systemd.

Создайте файл `~ / .config / systemd / user / myvm.service со следующим содержимым :

[Unit]
Description=My VM

[Service]
ExecStart=vboxmanage startvm myVM -type headless
ExecStop=vboxmanage controlvm myVM acpipowerbutton 
# Actually, I'm not sure about the stop command, but I'm confident you will figure that one out
RemainAfterExit=true

[Install]
WantedBy=default.target

Затем запустите systemctl --user enable myvm.service. Теперь вы можете запустить свою виртуальную машину с помощью systemctl --user start myvm.service и остановить ее с помощью systemctl --user stop myvm.service. Вход и выход в систему должны запускаться и останавливаться на вашей виртуальной машине.

Если вам нужно это при загрузке, а не входе в систему, вы можете попытаться сделать это системным системным блоком и указать исполняющего пользователя в секции [Service] с User= и Group=.

0
ответ дан 8 June 2018 в 14:07
  • 1
    Спасибо! Я попытался установить свой логин в единицу услуг, без удачи. Добавление RemainAfterExit спас день! Спасибо большое! – Martin B 23 May 2018 в 05:10

Чтобы запустить виртуальную машину при входе в систему и остановить ее при выходе из системы, вы можете использовать системные юниты systemd.

Создайте файл `~ / .config / systemd / user / myvm.service со следующим содержимым :

[Unit] Description=My VM [Service] ExecStart=vboxmanage startvm myVM -type headless ExecStop=vboxmanage controlvm myVM acpipowerbutton # Actually, I'm not sure about the stop command, but I'm confident you will figure that one out RemainAfterExit=true [Install] WantedBy=default.target

Затем запустите systemctl --user enable myvm.service. Теперь вы можете запустить свою виртуальную машину с помощью systemctl --user start myvm.service и остановить ее с помощью systemctl --user stop myvm.service. Вход и выход в систему должны запускаться и останавливаться на вашей виртуальной машине.

Если вам нужно это при загрузке, а не входе в систему, вы можете попытаться сделать это системным системным блоком и указать исполняющего пользователя в секции [Service] с User= и Group=.

0
ответ дан 17 July 2018 в 13:55

Чтобы запустить виртуальную машину при входе в систему и остановить ее при выходе из системы, вы можете использовать системные юниты systemd.

Создайте файл `~ / .config / systemd / user / myvm.service со следующим содержимым :

[Unit] Description=My VM [Service] ExecStart=vboxmanage startvm myVM -type headless ExecStop=vboxmanage controlvm myVM acpipowerbutton # Actually, I'm not sure about the stop command, but I'm confident you will figure that one out RemainAfterExit=true [Install] WantedBy=default.target

Затем запустите systemctl --user enable myvm.service. Теперь вы можете запустить свою виртуальную машину с помощью systemctl --user start myvm.service и остановить ее с помощью systemctl --user stop myvm.service. Вход и выход в систему должны запускаться и останавливаться на вашей виртуальной машине.

Если вам нужно это при загрузке, а не входе в систему, вы можете попытаться сделать это системным системным блоком и указать исполняющего пользователя в секции [Service] с User= и Group=.

0
ответ дан 20 July 2018 в 13:59

Другие вопросы по тегам:

Похожие вопросы: