Jamyy's Weblog

初探 libvirt + KVM/QEMU

by Jamyy on 十月.06, 2011, under Linux

環境: CentOS 6.0 x86_64
安裝套件: yum install qemu-kvm python-virtinst libvirt

建立虛擬機器

建立全新虛擬機器

virt-install \
  --name=guest1-win7 --vcpu=2 --ram=1024 \
  --disk path=/var/lib/libvirt/images/guest1-win7,size=8,sparse=false \
  --cdrom=/home/Standard\ 7\ SP1\ 32bit\ IBW.iso \
  --network bridge=br0 --os-type=windows --os-variant=win7 \
  --vnc --vnclisten=0.0.0.0 --vncport=5901

為已存在的 KVM/QEMU 映像檔建立 libvirt 虛擬機器

virt-install \
  --name=vmxp --vcpu=2 --ram=512 \
  --disk path=/path/to/vmxp.qcow2,format=qcow2 \
  --network bridge=br0 --os-type=windows --os-variant=winxp \
  --vnc --vnclisten=0.0.0.0 --vncport=5902 --import

virsh 基本操作

列出運作中的虛擬機器

virsh list

列出所有已註冊的虛擬機器

virsh list --all

啟動虛擬機器

virsh start guest1-win7

Host 開機後自動啟動虛擬機器

virsh autostart guest1-win7

取消自動啟動

virsh autostart --disable guest1-win7

將虛擬機器正常關機

virsh shutdown guest1-win7

強制停止運作中 (當機) 的虛擬機器

virsh destroy guest1-win7

解除註冊

virsh undefine guest1-win7

繼續 (解除暫停) 因 Host Reboot 而中斷執行的虛擬機器

virsh resume guest1-win7

光碟映像檔與 USB 儲存裝置

更換光碟映像檔 (虛擬機器光碟機換片)

virsh attach-disk guest1-win7 /path/to/filename.iso hdc --type cdrom

掛載 USB 儲存裝置

virsh attach-disk guest1-win7 /dev/sdb vdb \
  --driver tap --mode shareable

執行後 Windows Guest 會出現 SCSI 裝置 (Red Hat VirtIO SCSI Disk Device)
驅動程式在 virtio-win-0.1-15.iso

卸載 USB 儲存裝置

virsh detach-disk guest1-win7 vdb

其他備忘

修正 VNC 連線滑鼠游標失準問題

virsh shutdown guest1-win7
virsh edit guest1-win7

#在 <devices>...</devices> 之間任一處加入:
<input type='tablet' bus='usb'/>

virsh start guest1-win7

加入光碟機

virsh shutdown guest1-win7
virsh edit guest1-win7

#在 <devices>...</devices> 之間任一處加入:
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='1' unit='0'/>
    </disk>

virsh start guest1-win7

改用 Gigabit 網卡 (驅動程式在 virtio-win-0.1-15.iso)

virsh shutdown guest1-win7
virsh edit guest1-win7

#找到 <interface type='bridge'>, 在 </interface> 之前加入:
<model type='virtio'/>

virsh start guest1-win7

掛載 USB 裝置 (無效)

vi usbdevice.xml

<hostdev mode='subsystem' type='usb' managed='yes'>
	<source>
		<vendor id='0x04b8'/>
		<product id='0x083a'/>
	</source>
</hostdev>

virsh attach-device guest1-win7 /path/to/usbdevice.xml

Ref:

-

參考資料:

本站相關文章:



:

1 Trackback or Pingback for this entry