действие средства запуска virt-менеджера, чтобы непосредственно запуститься и открыть определенный VM

Я использую virt-manager для моих виртуальных машин Qemu/KVM. Начальная загрузка VM в настоящее время означает запускаться virt-manager, выбор VM для открытия его в средстве просмотра VM и затем наконец включении VM.

Я хотел бы добавить опцию контекстного меню средства запуска для него, которая непосредственно открывает окно средства просмотра VM и запускает VM.

Копирование и редактирование virt-manager.desktop файл для добавления действия контекстного меню не является никакой проблемой, но я не знаю, что подходящая команда делает virt-manager ведите себя, как я требую. Как я могу достигнуть этого?

4
задан 28 July 2016 в 10:37

2 ответа

Используйте virt-менеджера для нахождения "URI Libvirt" (выберите VM, Edit -> Connection Details), затем название VM (выбирают VM, Edit -> Virtual Machine Details - если у Вас есть открытая машина, необходимо будет удостовериться, что это не максимизируется, затем View -> Details, и вернитесь к Консоли, когда Вы сделаны.)

Затем использование (не вводят ведущий $)

$ virt-manager --connect <<URI>> --show-domain-console <<NAME>>

, Где URI и имя - то, где Вы получили их сверху. Например, мой похож:

$ virt-manager --connect qemu:///system --show-domain-console win7

Выполнение это из командной строки. Если это работает, необходимо смочь поместить его в простой сценарий

$ cat > ~/bin/run-vm
#!/bin/bash
virt-manager --connect qemu:///system --show-domain-console win7
^D

(Где ^D является управлением + D).

$ chmod u+x ~/bin/run-vm

И, затем необходимо смочь добавить, что эта команда к меню - видит, например Ответ на Unix и Linux сайт Stackoverflow .

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

3
ответ дан 1 December 2019 в 09:46

Я записал маленький сценарий "~/scripts/StartVirtDomain.sh"

#!/bin/sh
# call this script with domainname as parameter 
# to start domain and open viewer

/usr/bin/virsh start $1         # domain must be known to virsh
/usr/bin/virt-viewer -w $1      # -w to wait until domain is running. 

virt-средство-просмотра должно быть установлено с virt-менеджером; в противном случае sudo apt-get install virt-viewer.

Можно назвать его с названием домена как параметр. Это запустит домен (если не уже запущенный), затем запустить virt-средство-просмотра для соединения с этим доменом.

Демонстрационный файл на рабочем столе (W7Pro.desktop)

[Desktop Entry]
Version=1.0
Type=Application
Name=W7Pro
Comment=Start Windows VM 
Exec=~/scripts/StartVirtDomain.sh Win7Pro
Icon=
Path=~/scripts
Terminal=false
StartupNotify=false

сделал задание (доменное имя является Win7Pro). В сценарии нет никакой обработки ошибок; можно добавить некоторых при необходимости. Особенно, если домен не будет известен virsh или не запустится, то virt-средство-просмотра будет, вероятно, ожидать навсегда.

Править:

При реальной необходимости в консоли virt-менеджера просто назовите ее как

virt-manager --connect=<URI> --show-domain-console <domain>

например, в моем сценарии это было бы

/usr/bin/virt-manager --connect=qemu:///system --show-domain-console $1

Соединение URI может быть найдено в главном окне virt-менеджера путем выбора соответствующего соединения (например, QEMU/KVM) и затем использования "Деталей" в контекстном меню.

Можно даже удалить строку, звоня virsh, поскольку домен может быть запущен с консоли virt-менеджера.

1
ответ дан 1 December 2019 в 09:46

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

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