Я установил пакет xcp-xapi в Ubuntu 12.10. Я уже создал виртуальную машину PV в XenCenter, но не могу получить доступ к ее консоли - когда я выбираю вкладку «Консоль» в XenCenter, у меня появляется пустая страница.
Я попробовал это через консоль и получил следующее:
bear@ubuntu-tmp1:~$ sudo xe vm-list params=dom-id
dom-id ( RO) : 0
dom-id ( RO) : 2
bear@ubuntu-tmp1:~$ sudo xenstore-ls /local/domain/2/serial
0 = ""
limit = "65536"
bear@ubuntu-tmp1:~$
Согласно этому официальному ссылка на сайт, Я должен, по крайней мере, увидеть на выходе 'tty' и 'vnc', но у меня нет ни одного из них ... Теперь у меня совершенно нет возможности установить ОС на эту виртуальную машину, потому что нет доступной консоли ... :-(
Есть скрытая команда CLI (для которой я отправил запрос, чтобы сделать не скрытым):
xe console uuid=<vm_uuid>
Обратите внимание, что это работает только для гостей PV. В качестве альтернативы, как для гостей PV, так и для HVM, вы можете использовать vncviewer для получения консоли VNC. Используйте xenstore, чтобы получить порт VNC:
PORT=xenstore-read /local/domain/${domid}/console/vnc-port
а затем позвоните:
vncviewer -via root@${YOUR_SERVER} localhost::${PORT}
Вот сценарий, который сделает это за вас:
#!/bin/bash
function usage () {
echo "Usage:"
echo " `basename $0` -h <xenserver host> -g <guest vm name-label>"
echo " `basename $0` -h <xenserver host> -u <guest vm uuid>"
echo " `basename $0` -h <xenserver host> -d <domID>"
exit 1
}
while getopts "h:g:u:d:" option
do
case $option in
h ) xs=${OPTARG} ;;
g ) vm=${OPTARG} ;;
u ) uu=${OPTARG} ;;
d ) id=${OPTARG} ;;
* ) usage
esac
done
if [ -z ${xs} ]; then
usage
fi
if [ -z ${uu} ] && [ -z ${vm} ] && [ -z ${id} ]; then
usage
fi
if [ ! -z ${uu} ]; then
domid=`ssh root@${xs} xe vm-list uuid=${uu} params=dom-id --minimal`
elif [ ! -z ${vm} ]; then
domid=`ssh root@${xs} xe vm-list name-label=${vm} params=dom-id --minimal`
elif [ ! -z ${id} ]; then
domid=${id}
fi
if [ -z ${domid} ]; then
echo "Could not find guest ${vm}${uu} on host ${xs}."
exit 1
elif [ ${domid} -lt 0 ]; then
echo "Guest ${vm}${uu} has no dom-id. Is your vm running?"
exit 1
fi
port=`ssh root@${xs} xenstore-read /local/domain/${domid}/console/vnc-port`
if [ -z ${port} ]; then
echo "Couldn't read VNC port from xenstore. Is your vm running?"
exit 1
fi
echo "Connecting to vnc port ${port} on host ${xs}..."
set -x
vncviewer -via root@${xs} localhost::${port}