1: 新建虚拟机
(1)创建img镜像,输入如下命令:
qemu-img create –f qcow2/vmdk/win7.img 10G
(2)创建并修改xml文件
<span style="font-size:14px;"><domain type='kvm'>
<name>win7</name> --此处win7为虚拟机的名字,必须唯一
<memory>524288</memory> --此处为分配给虚拟机的内存字节数,可根据实际情况改写
<vcpu>1</vcpu> --此处为分配给虚拟机的cpu个数,若为1个,此行可删除
<os>
<type>hvm</type>
</os>
<devices>
<disk>
<source file='/vmdk/win7.img'/> --file的值为镜像所在的绝对路径
<target dev='hda' bus='ide'/>
</disk>
<graphics type='vnc' port='5911' autoport='no' listen='0.0.0.0'/>--各虚拟机port的值一定不能相同
</devices>
</domain>
</span>
然后保存退出
使xml文件生效输入如下命令
virsh define /vmdk/win7.xml
2:虚拟机的安装
将要安装的操作系统iso镜像放到某一目录中,此处假设iso放在/vmdk/win7.iso
(1)编辑虚拟机属性
输入如下命令:virsh edit win7 #win7为虚拟机的名字,与前面对应
将进入vi,进行如下修改
将/domain/os/boot的属性dev的值改为cdrom,让虚拟机从光盘启动,如下:
<boot dev=’cdrom’ /> --从光盘启动
将/domain/devices/disk/driver的type属性改为qcow2
在/domain/devices下新加入如下内容:
<disk type=’file’ device=’cdrom’>
<source file=’/vmdk/win7.iso’ />
<target dev=’hdb’ bus=’ide’ />
</disk>
若虚拟机为windows则需添加
<features>
<acpi/>
</features>
保存并退出
(2)启动虚拟机
virsh start win7#win7为虚拟机的名字,与前面对应
(3)用VNCViewer登陆虚拟机(ip:port),进行系统的安装
此处port可以在服务器上用如下命令获得:virsh vncdisplay win7# win7为虚拟机的名字,与前面对应
(4)安装完成后,关闭虚拟机,修改xml文件
输入如下命令:virsh edit win7# win7为虚拟机的名字,与前面对应
将/domain/os/boot的属性dev的值改为hd,让虚拟机从硬盘启动,如下:
<boot dev=’hd’ /> --从硬盘启动
删除上面2.1中新加入的如下内容:
<disk type=’file’ device=’cdrom’>
<source file=’/vmdk/test.iso’ />
<target dev=’hdb’ bus=’ide’ />
</disk>
保存后退出
3:虚拟机安装virtio驱动(virtio-win-0.1-81.iso)(必须:网卡驱动、磁盘驱动, 可选:串口驱动)
为了让虚拟机可上网,提高windows虚拟机的性能,需要安装virtio网卡驱动和磁盘驱动,
为了能让虚拟机访问virtio-win-0.1-81.iso驱动, 可以通过挂载关盘形式进行,
为了模拟virtio磁盘驱动所需的磁盘设备, 可以通过挂载手动建立的小的镜像mini.img(qemu-img create –f qcow2 /vmdk/mini.img 1G),mini.img所在disk的bus='virtio'
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='writeback'/>
<source file='vmdk/win7.img'/>
<target dev='hda' bus='ide'/>
</disk>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='vmdk/mini.img'/>
<target dev='hdb' bus='virtio'/>
</disk>
<disk type='file' device='cdrom'>
<driver name='qemu' type='qcow2'/>
<source file='/vmdk/virtio-win-0.1-81.iso'/>
<target dev='hdc' bus='ide'/>
</disk>
启动虚拟机后, 安装网卡驱动和磁盘驱动安装好后删除mini.img和virtio-win-0.1-81.iso对应的disk标签, 然后修改win7.img disk标签下bus='virtio'
若虚拟机采用NAT模式则增加标签
<interface type='network'>
<source network='default'/>
<model type='virtio'/>
</interface>
完整win7虚拟机(NAT模式)的xml如下:
<domain type='kvm'>
<name>win7_x32</name>
<memory unit='KiB'>2097152</memory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' machine='rhel6.6.0'>hvm</type>
<boot dev='hd'/>
</os>
<features>
<acpi/>
</features>
<clock offset='localtime'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<devices>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='writeback'/>
<source file='/home/vmdk/image/win7.img'/>
<target dev='hda' bus='virtio'/>
</disk>
<interface type='network'>
<source network='default'/>
<model type='virtio'/>
</interface>
<input type='tablet' bus='usb'/>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='5900' autoport='no' listen='0.0.0.0' passwd='XXX'/>
<memballoon model='virtio'/>
</devices>
</domain>