kvm创建虚拟机的时候无法识别磁盘文件?

xzfxz 发布于 2016/10/19 16:41
阅读 407
收藏 0
KVM

创建kvm的时候我一般都在使用virt-install 命令,如下:

virt-install  -n ubuntu16 -r 1024 -vcpus=2 -s 50 
-c /home/iso/ubuntu-16.04-desktop-amd64.iso 
--hvm --os-type=linux -f /home/data/kvmdisk/ubuntu.img 
--graphics vnc,listen=0.0.0.0,port=7789 --force --autostart

其中ubutnu的img文件,并没有通过qemu-img 命令指定。如此的情况下,可以识别磁盘文件。也有网友说可以使用qemu-img命令的时候 取消 -f qcow2 这样的参数。

另外也有网友说在如上的创建虚拟机的时候添加bus=ide参数,命令如下:



virt-install --connect qemu:///system --name winxp --ram 2048 --vcpus=2 
--disk path=/home/data/kvmdisk/xp.img,device=disk,format=qcow2,bus=ide,cache=none,size=50 
--cdrom /home/iso/xp.iso --os-type=windows --graphics vnc,listen=0.0.0.0,port=7793 --force --autostart


除了使用如上的命令之外,还可以使用xml的配置文件的方式。我的xml配置文件如下:

————————————————————————————————

<domain type='kvm'> //域类型
 <name>win07_1</name> //虚拟机名称
 <uuid>dd61db7a-3b7c-1c14-a169-3fbd6d710c57</uuid> //虚拟机uuid
 <memory unit='KiB'>2097152</memory> //虚拟机最大内存 2G
 <currentMemory unit='KiB'>2097152</currentMemory> //虚拟机当前内存 2G
 <vcpu placement='static'>2</vcpu> //vcpu个数
 <os>
 <type arch='x86_64' machine='rhel6.5.0'>hvm</type> //全虚拟化
 <boot dev='hd'/> //从硬盘启动
 </os>
 <features>
 <acpi/>
 <apic/>
 <pae/>
 </features>
 <clock offset='localtime'>
 <timer name='rtc' tickpolicy='catchup'/>
 </clock>
 <on_poweroff>destroy</on_poweroff>
 <on_reboot>restart</on_reboot>
 <on_crash>restart</on_crash>
 <devices>
 <emulator>/usr/libexec/qemu-kvm</emulator>
 <disk type='file' device='disk'> //disk是用来描述磁盘的主要容器
 <driver name='qemu' type='raw' cache='none'/> //缓存大小
 <source file='/home/data/kvmdisk/win2007.img'/> //指定磁盘文件的绝对路径
 <target dev='hda' bus='ide'/> //ide接口
 <address type='drive' controller='0' bus='0' target='0' unit='0'/>
 </disk>
 <disk type='file' device='cdrom'> //cdrom信息
 <driver name='qemu' type='raw'/>
 <source file='/home/iso/win7.iso'/> //cdrom镜像位置
 <target dev='hdc' bus='ide'/>
 <readonly/>
 <address type='drive' controller='0' bus='1' target='0' unit='0'/>
 </disk>
 <controller type='usb' index='0'>
 <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
 </controller>
 <controller type='ide' index='0'>
 <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
 </controller>
 <interface type='bridge'> //桥接设置
 <mac address='52:54:00:7f:c7:a6'/> //mac地址
 <source bridge='virbr0'/> //桥接网卡 
 <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
 </interface>
 <serial type='pty'>
 <target port='0'/>
 </serial>
 <console type='pty'>
 <target type='serial' port='0'/>
 </console>
 <graphics type='vnc' port='7790' autoport='no' listen='0.0.0.0'> //vnc端口
 <listen type='address' address='0.0.0.0'/> //监听的IP
 </graphics>
 <input type='tablet' bus='usb'/>
 <memballoon model='virtio'>
 <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
 </memballoon>
 </devices>
</domain>


加载中
返回顶部
顶部