图解在 KVM 上安装 Win7 虚拟机
之前都是在用Linux 虚机,现在有需要用到Win7 虚机,才发现在 KVM 上安装 Win7 的过程远比想象中的复杂。本篇经验就把其过程做个简单总结,希望对大家的工作和学习有所帮助!
在 Virtual Machine Manager 里面安装
1、首先尝试在 Virtual Machine Manager 里面安装。遇到的问题如下:一直停留在 starting windows 界面。解决方法:修改 video model 为 Cirrus,问题解决,如下图所示:
2、开始安装后,对鼠标和键盘无响应。google,发现需要使用<坡纠课柩input type=’tablet’ bus=’usb’/>。添加一个,如下图所示:但是键盘还是不好使。。算了,还是转到使用 qemu-system-x86_64 命令启动虚机吧。
使用 qemu-system-x86_64 启动 Win 7 虚机
1、环境准备下载 Windows virtio driver iso:https://fedorapeople.泠贾高框org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.102/,因为要将磁盘挂接为 virtio 磁盘。
2、创建系统盘qemu-img create -f raw win7.img 30G,这将作为Win7的操作系统盘。
3、创建启动脚本,如下图所示:
4、可以运行脚本了,然后通过 VNC 进入界面,进入下面部分。
5、安装 Win 7选择 Custom(advanced),如下图所示:
6、选择 virtio 磁盘,如下图所示:
7、选择 virtio disk driver,如下图所示:
8、安装 Win7 Virtio SCSI Driver,如下图所示:
9、安装好以后,就可以看到安装的目标磁盘了,如下图所示:
10、进入常规的 Win7 安装流程,如下图所示:
安装其它 Virtio 驱动
1、网络驱动,如下图所示:
2、但是安装失败,如下图所示:
3、尝试 device manager,如下图所示:
4、但是还是失败,如下图所示:
5、Baloon driverDevice manager, 右键 root device, add legacy hardware, next, install m锾攒揉敫anually (advanced), next, have disk, browse, select inf, install,如下图所示:改成此方法安装 network 驱动成功。注意将虚机重启从而使得安装生效。
6、诡异的问题通过上面方法得到的 Win7 raw 格式的镜像文件可以直接使用来创建新的虚机,这些新的虚机会使吹涡皋陕用 virtio network driver。但是,在 OpenStack 环境和中,Nova 首先将 qcow2 格式的镜像从glance 中下载到计算节点上,然后将它转化为 raw 格式作为 backfing file,再创建一个 qcow2 文件,它使用 raw 文件作为 backing file。如下图所示:
7、诡异的是,OpenStack 中新建的虚机不能使用 virtio network driver,如下图所示:
8、但是如果使用backing file 直接启动虚机,则没有这个问题。使用同样的 backing file 创建一个新的 qcow2 文件,则没有这个问题具体原因应盐淬芪求该和 Nova 的具体逻辑有关,将来再查,现在暂时使用 SCSI network driver。