天天看點

kvm vnc的使用,滑鼠漂移等

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,如需轉載請自行聯系原作者

繼續閱讀