Як запустити та зупинити гостей VirtualBox за допомогою командного рядка


11

У мене є також VirtualBox на Ubuntu 16.04 в якості господаря та гостей. Я повинен керувати гостями (запуск, зупинка лише) за допомогою командного рядка SSH, але не знайшов жодного робочого рішення.



Це було легше, ніж я думав. Вибачте за ВИКЛ. Існує якийсь інструмент командного рядка для kvm. Один з них - «вірш». Для запуску | зупинення vm просто використовуйте: $ virsh start | shutdown <vmname> (ви можете перерахувати за списком $ virsh --all). Цей інструмент можна використовувати, наприклад, у bash script або crontab. Ще раз дякую за допомогу.
кодолом

Відповіді:


20

Все це можна досягти, використовуючи VBoxManage після встановлення ssh-з'єднання:

1. Перерахуйте свій VMS:

Спочатку перерахуйте наявні віртуальні машини з командою VBoxManage list vms, я проілюструю це в моїй власній настройці:

andrew@ilium~$ VBoxManage list vms
"Windows 8" {c4422acd-727b-45a0-9eef-65636bcde44d}
"Windows 10" {a8e262be-a032-4918-9085-63185318a979}
"Trusty Tahr Clean Copy" {c99bcf4b-9fea-4971-b190-425cb0b0cdeb}
"Xenial Xerus Clean Copy" {850122b9-c65f-425b-abb3-ffda68e159c6}
"Precise Pangolin Clean Copy" {169086e6-a3f4-42e7-8a89-63dcb273143f}
"Precise Pangolin Working Copy" {ff8312b6-cfae-4877-aa93-d71036d8882c}
"Xenial Xerus for MPlayer" {44902710-4368-4c06-9d24-3cb55328d31c}
"Xenial Xerus for vlc" {a62ad306-17d9-4ee3-8c1a-e4439c3b0e05}
"Xenial Xerus mingw64" {584d8513-6a16-49c7-b020-d657b93d5552}
"Trusty Tahr Working copy..." {433349e9-52eb-4066-bae7-623592871839}
"Xenial Xerus Working copy..." {dda23e74-cdb5-4c7d-8836-31be4129c02a}
andrew@ilium~$ 

Примітка. Якщо ви не впевнені, який VM працює, ви можете скористатися ним VBoxManage list runningvms...

2. Запустіть VM:

VBoxManageКоманди опції , які ви після того , почати віртуальної машини такі:

  startvm                   <uuid|vmname>...
                            [--type gui|sdl|headless|separate]

Отже, для запуску VM "Довірна тара очищення копії" у моєму прикладі ви використовуєте:

VBoxManage startvm "Trusty Tahr Clean Copy" --type gui

3. Зупинка VM:

Щоб зупинити VM, ви знову використаєте, VBoxManageале на цей раз з controlvmопцією:

  controlvm                 <uuid|vmname>
                            pause|resume|reset|poweroff|savestate|

І в моєму прикладі для закриття "Trusty Tahr Clean Copy" VM командою було б:

VBoxManage controlvm "Trusty Tahr Clean Copy" savestate

Це все повинно добре працювати над ssh, кому ж потрібен gui :)


Я спробував ці команди, перш ніж запитати. Список VBoxManage vms | runningvms | все інше - порожній результат неможливий. ВМС створюються на графічному фронтені і вони працюють. Це був момент, коли я попросив допомоги.
кодолом

@codolom Hmmm .... тоді повинен бути ssh-з'єднання. Ви підключаєтесь до свого хост-комп'ютера з іншого комп’ютера через ssh? Я припускаю, що ви використовуєте командний рядок ssh ...
andrew.46

@codolom t цікаво, я перевіряв інформацію у своїй відповіді ion у власній системі через ssh, і вона працювала чудово. Чи дає `VBoxManage list vms` помилку?
andrew.46

Я не знав, що це може бути проблемою. Я намагався виправити це так: stackoverflow.com/questions/5906441/… Я ненавиджу це текстове поле за допомогою Ctrl + Enter :( - Вибачте за відсутні
пункти

Немає помилок. Порожній вихід.
кодолом

2

Для витонченого відключення використовуйте:

VBoxManage controlvm "Name" acpipowerbutton
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.