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 可以正常通路
<a href="http://s2.51cto.com/wyfs02/M00/8A/DB/wKiom1g9Q5jBhnaUAADm5OhjEGQ785.png-wh_500x0-wm_3-wmp_4-s_3098648009.png" target="_blank"></a>
在win主機使用vnc viewer連接配接會黑屏,具體原因有待研究
<a href="http://s4.51cto.com/wyfs02/M01/8A/D7/wKioL1g9Q6bgGzxtAAALx42CLuU587.png-wh_500x0-wm_3-wmp_4-s_341809816.png" target="_blank"></a>
例子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 提示需要密碼,直接回車包認證失敗錯誤
<a href="http://s5.51cto.com/wyfs02/M00/8A/DB/wKiom1g9Q7fBIi7MAACEJNctyLQ924.png-wh_500x0-wm_3-wmp_4-s_321886010.png" target="_blank"></a>
解決:在主控端的指令後面加上 -monitor stdio,然後使用change vnc password設定vnc密碼
<a href="http://s2.51cto.com/wyfs02/M02/8A/DB/wKiom1g9Q8iDPnUQAAAl6wgAcGg652.png-wh_500x0-wm_3-wmp_4-s_3029050624.png" target="_blank"></a>
例子3:reverse的使用
在linux主機上: vncviewer -listen :2
在主控端:
qemu-system-x86_64 /root/kvm_vhost/redhat6.qcow2 -vnc 192.168.2.127:5500,reverse
<a href="http://s5.51cto.com/wyfs02/M01/8A/DC/wKiom1g9SQOwhoxsAAAOwmz1Vr4937.png-wh_500x0-wm_3-wmp_4-s_3107686412.png" target="_blank"></a>
linux主機的結果:自動彈出客戶機的vnc界面
<a href="http://s5.51cto.com/wyfs02/M01/8A/D8/wKioL1g9SVrQQzR_AAAskYZAxs8914.png-wh_500x0-wm_3-wmp_4-s_2850779206.png" target="_blank"></a>
補充圖形界面幾點内容:
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
本文轉自biao007h51CTO部落格,原文連結: http://blog.51cto.com/linzb/1877822,如需轉載請自行聯系原作者