1.宿主機的vnc(virtual Network Computing)配置
????安裝rpm包
????????yum install tigervnc-server -y
????為了防止干擾直接關閉防火墻和selinux
????????/etc/init.d/iptables stop
????????setenforce 0
????配置vnc密碼和啟動vncserver服務
????????vncpasswd
????????vncserver ?
2.客戶機的vnc
在qemu-kvm命令中有個參數-vnc DISPLAY,OPTION 這個參數會讓qemu使用vnc而不是sdl(Simple DirectMedia Layer)
display:
????host:d 表示vnc服務監聽在host:(d+5900)這個套接字上,host為空則表示監聽在0.0.0.0,比如-vnc :1 則表示監聽在0.0.0.0:5901上
????unix:path 用的不多,不解釋(其實我也不知道..)
????none?表示vnc已經被初始化,但不啟動,需要時可以在vmm中使用change vnc DISPLAY,OPTION來啟動
option:
????reverse:表示反向到一個處于監聽中的vnc套接字,所以,假設我們在客戶端vncviewer -listen :1 ,它會告訴你它監聽在某個端口,然后在宿主機上我們就可以-vnc ClientIP:port,reverse
????password:表示需要密碼才能連接,具體的密碼必須到vmm(qemu monitor)中使用change vnc password設置
????“tls” “x509=/path""sasl"等:安全通信相關,這里不解釋
假設:
????宿主機:192.168.2.188?
????win主機:192.168.2.106
????linux主機:192.168.2.127
例子1:
在宿主機:
????qemu-system-x86_64 -m 4096 -smp 8 -net nic -net user,tftp=/root/tftp,hostfwd=tcp::5022-:22 /root/kvm_vhost/redhat6.qcow2 -vnc 192.168.2.188:5907
在linux主機使用vncviewer 192.168.2.188:11807 可以正常訪問
在win主機使用vnc viewer連接會黑屏,具體原因有待研究
例子2
在宿主機:
????qemu-system-x86_64 -m 4096 -smp 8 -net nic -net user,tftp=/root/tftp,hostfwd=tcp::5022-:22 /root/kvm_vhost/redhat6.qcow2 -vnc 192.168.2.188:5907,password
在linux主機訪問vncviewer 192.168.2.188:11807 提示需要密碼,直接回車包認證失敗錯誤
解決:在宿主機的命令后面加上 -monitor stdio,然后使用change vnc password設置vnc密碼
例子3:reverse的使用
在linux主機上: vncviewer -listen :2
???
在宿主機:?
????qemu-system-x86_64 ?/root/kvm_vhost/redhat6.qcow2 -vnc 192.168.2.127:5500,reverse?
linux主機的結果:自動彈出客戶機的vnc界面
補充圖形界面幾點內容:
1.當使用vnc方式啟動客戶機的時候,很多時候宿主機的鼠標和客戶機的鼠標不在同一個焦點上。
解決方法:在qemu-kvm啟動時,加上-usb -usbdevice tablet 或者-device piix3-usb-uhci參數
2.顯示相關的其他選項(qemu-system-x86_64)
????-curses:讓qemu將vga顯示輸出到使用curses/ncurses接口支持的文件模式界面
比如,利用xshell連接宿主機,使用qemu-system-x86_64 ?-m 4096 ?/home/kvm_vhost/redhat6.qcow2 ?-curses 命令,客戶機的界面會直接覆蓋宿主機的界面
????-vga type:模擬vga卡類別,type有以下幾種:
????????cirrus:默認類型
????????std:標準
????????vmware:提供對“vmware SVGA-II”兼容顯卡的支持
????????none:關閉vga卡
以上類型,都可以在客戶機中lspci查看
????-no-frame:使用sdl顯示時沒有邊框。
????-full-screen:啟動客戶機時,全屏顯示
????-alt-grab:使用ctrl+alt+shit組合鍵去搶占和釋放鼠標,默認ctrl+alt,所以我們切換到qemu monitor的時候摁ctrl+alt+2,如果使用此選項,則變為ctrl+alt+shift+2
????-ctrl-grab:同上,只不過這里使用右ctrl