Linux
virt-install 忽略 vnc 埠/監聽?
我正在嘗試在遠端主機上創建 kvm 機器。
主機正在執行 debian 測試。
確實使用了這個命令:
virt-install --name debian-test \ --os-type=linux \ --os-variant=debianwheezy \ --cdrom /media/media/software/iso/debian-testing-amd64-netinst-2014-01-16.iso \ --graphics vnc,listen=0.0.0.0,port=20001 \ --disk pool=default,format=raw,size=20 \ --ram 2048 \ --vcpus=2 \ --network bridge=virbr0 \ --hvm \ --virt-type=kvm
但是當它被創建時,它會監聽:
=# virsh domdisplay debian-test vnc://localhost:14101
當我創建 port=40001 時,它正在偵聽埠 34101,所以看起來該埠被視為某種偏移量?!無論如何 - 根本沒有使用聽,並且能夠從本地主機連接不是我現在想要的。
我究竟做錯了什麼?
你沒有做錯什麼。VNC 協議指定“埠”實際上不是埠,而是與預設 VNC 埠 5900 的偏移量。
因此
localhost:0
將連接到埠 5900,localhost:1
將連接到埠 5901,等等。預設情況下,libvirt 僅將 VNC 偵聽器綁定到 localhost,無論您在命令行中指定什麼。要更改這一點,您需要在
/etc/libvirt/qemu.conf
.# VNC is configured to listen on 127.0.0.1 by default. # To make it listen on all public interfaces, uncomment # this next option. # # NB, strong recommendation to enable TLS + x509 certificate # verification when allowing public access # #vnc_listen = "0.0.0.0"
確保在進行此更改後重新載入或重新啟動 libvirtd。