环境准备
可以通过如下命令查看当前kvm版本支持什么系统
# osinfo-query os
PS:/data 存放虚拟机镜像和磁盘的目录,此目录不存在则创建(建议放在大一点的目录比如数据盘单独分区挂载到这个目录
创建命令# mkdir -p /vm
/vm/iso 存放镜像
/vm/data 存放虚拟机磁盘
Windows 2016虚拟机创建
virt-install \ --virt-type=kvm \ --name demo-win2016 \ --ram 4096 \ --vcpus=4 \ --os-variant=win2k16 \ --cdrom=/vm/iso/cn_windows_server_2016_updated_feb_2018_x64_dvd_11636703.iso \ --network=bridge=br0,model=virtio \ --graphics vnc,listen=0.0.0.0 --noautoconsole \ --disk path=/vm/data/demo-win2016.qcow2,size=50,bus=virtio,format=qcow2
--os-variant=win2k16 这个表示可以通过# osinfo-query os获取
执行以上命令稍等片刻

创建完虚拟机后提示如下

使用VNC连接虚拟机 默认第一台VNC端口是5900
检测系统镜像之类的加载中,稍等即可

正常安装windows步骤,选择系统语言时区等等然后点击下一步

点击现在安装


输入秘钥,有标准版的秘钥/数据中心版本的秘钥,具体可以百度查找

选择要安装的系统版本 站长这边选择2016系统数据中心版本(桌面体验),然后点击下一步

说明:
服务器核心安装:只有命令行界面,没有
图形界面桌面体验:支持命令界面和图形界面
点击勾选我接受许可条款,然后点击下一步

选择自定义:仅安装 Windows(高级)选项

到这一步无法看到虚拟硬盘,这是因为之前创建虚拟机时选用虚拟硬盘总线是virio模式的,Windows Server 2008 R2系统以后默认不带有virio设备驱动,如果使用是IDE总线就可以被windows系统识别到

在KVM宿主机上将之前准备的VirtIO for Win驱动镜像挂载给这台虚拟机
virsh attach-disk demo-win2016 /vm/iso/virtio-win-0.1.160.iso hda --type cdrom --mode readonly

再点击加载驱动程序

选择光驱中viostor目录中的2k16中的amd64文件夹,然后点击确定

经过扫描后发现硬盘驱动,并安装

驱动安装完毕后即可看见虚拟硬盘

但此时无法安装,因为虚拟光驱中操作系统镜像已经被驱动镜像代替,需要将操作系统镜像重新挂载给虚拟机;
virsh attach-disk demo-win2016 /vm/iso/cn_windows_server_2016_updated_feb_2018_x64_dvd_11636703.iso hda --type cdrom --mode readonly

点击驱动器选项高级分区,选中磁盘,然后点击新建分区

新建完后分区如下,选择磁盘分区2 >> 点击下一步

开始正常安装Windows操作系统

等待自动重启或者点击立即重新启动

重启后系统会没有启动,这个时候需要进入KVM宿主机启动 ,启动命令如下
virsh start demo-win2016
系统启动中

正在准备中,等待加载完成

设置输入服务器密码,点击完成

正在完成你的设置等待加载

完成后出现如下图,点击VNC软件的这个Ctrl+Alt+Delete功能按钮进入系统

输入刚刚设置的系统管理员密码

进入系统后如下

点击开始菜单栏的服务器管理器图标,进入服务器管理器界面选择右上角的工具选项,在弹出的列表中选择计算机管理打开

选择右上角的工具选项中的计算机管理,点击打开

在计算机管理界面中选择设备管理器,可以看到有未识别的硬件,以太网控制器和PCI总线

继续挂载驱动镜像,安装驱动程序;
在KVM宿主机上将之前准备的VirtIO for Win驱动镜像挂载给这台虚拟机;
virsh attach-disk demo-win2016 /vm/iso/virtio-win-0.1.160.iso hda --type cdrom --mode readonly

加载完驱动镜像后,选择以太网控制器,右键选择更新驱动程序软件

选择浏览计算机以超找驱动程序软件

加载完驱动镜像盘后,在服务器内部选择驱动盘的盘符然后点击下一步

它会自动搜索,搜索到的网卡驱动如下点击安装

安装完毕后可以看到网卡驱动已经安装上了


