Это не всегда столь же просто как, "который на первом месте в $PATH"; см. https://superuser.com/questions/358695/how-does-linux-decide-which-executable-im-trying-to-run. Для быстрого исправления, устанавливает псевдоним в .bashrc (предполагающий, что Вы используете удар...),
alias gorgonzola='usr/local/gorgonzola'
Примечание: пробел не позволяется вокруг "=" знак.
Хорошо, Я работал над этим самостоятельно. В опции:
--graphics spice,port=20001,listen=127.0.0.1
удалите параметр порт
таким образом, чтобы он стал:
--graphics spice,listen=127.0.0.1
Вам необходимо настроить элемент
в libvirt
XML-файл конфигурации. Мой вызов virt-install
дал мне следующее:
<graphics type='spice' autoport='yes' listen='127.0.0.1'>
<listen type='address' address='127.0.0.1'/>
</graphics>
Есть одно предостережение. Я завершил установку, пока SPICE все еще был подключен к автоматически подключаемому порту по умолчанию (5900 в моем случае). Если вы выключите гостя до завершения установки, весь процесс, инициированный virt-install
, будет прерван.
Чтобы изменить его, необходимо закрыть гостя и отредактировать XML примерно так, как показано ниже, используя virsh edit vmname
(где vmname
следует заменить на свое имя ):
<graphics type='spice' autoport='no' port='20001' listen='127.0.0.1'>
<listen type='address' address='127.0.0.1'/>
</graphics>
Возможный обходной путь для конфликтов "используемый порт". Используйте любой из локальных сетевых адресов, кроме 127.0.0.1 из 127.0.0.0/24, например 127.0.0.2 и т. Д., Чтобы слушать.
ПРИМЕЧАНИЕ: Если кто-то может предложить лучшее (то есть реальное) решение, я приму другой ответ. Эта запись в основном предназначена для тех, кто может столкнуться с той же проблемой.
решение состоит в том, чтобы указать kvm/virt использовать по умолчанию небезопасное соединение.
<graphics type='spice' autoport='yes' listen='0.0.0.0' defaultMode='insecure'>
<listen type='address' address='0.0.0.0'/>
</graphics>
Установите для defaultMode
значение insecure
, и вы сможете использовать даже autoport='yes'
, и все будет в порядке.
Подсказка: когда вы ищете порт, вы должны использовать domdisplay
:
[root@kvm repo]# virsh domdisplay --domain openshift1
spice://localhost:5900
Я не знаю, ошибка это или правильное поведение, но вывод virsh domdisplay --domain openshift1
показывает localhost
вместо 0.0.0.0
. Но вы можете подключиться извне с помощью server-ip/dns к вашей гостевой виртуальной машине. Убедитесь, что брандмауэр разрешает вам подключаться к этим портам, и даже kvm/virt прослушивает 0.0.0.0
, как показано выше.
Когда удобные аргументы для virt-install
не работают, вместо этого можно вручную создать xml, используя синтаксис XPath .
Замена --graphics "spice,port=20001,defaultMode=insecure,autoport=no"
этими пятью парами аргументов была для меня успешным обходным путем:
--xml 'xpath.delete=./devices/graphics' \
--xml './devices/graphics/@defaultMode=insecure' \
--xml './devices/graphics/@autoport=no' \
--xml './devices/graphics/@type=spice' \
--xml "./devices/graphics/@port=20001"
Те из нас, кому интересен сгенерированный xml, могут добавить опцию --print-xml
.
Если это поможет...
listen=0.0.0.0, <-- listen on any interface
port=5962, <-- specify non-secure port
tlsport=, <-- do not request TLS
defaultMode='insecure' <-- allow insecure
virt-install \
...
--graphics spice,listen=0.0.0.0,port=5962,tlsport=,defaultMode='insecure' \
...
Результирующий XML:
<graphics type='spice' port='5962' autoport='no' listen='0.0.0.0' defaultMode='insecure'>
<listen type='address' address='0.0.0.0'/>
<image compression='off'/>
</graphics>