使用virt-manager为windows虚拟机添加Virtio驱动

问题:openstack上的windows虚拟机出现找不到磁盘的问题。由于使用的虚拟机上已搭建好所需服务,重新安装一台虚拟机是不现实的。发生这个问题的主要原因就是openstack使用的驱动是virtio,大部分的linux系统已经集成,但是win10之前的系统是没有的。

经过本人的摸索发现,下面方法不行。

1、将下载好的virtio驱动直接安装在windows系统中,安装好系统会提示该设备无法启动。但我感觉离成功不远了。光这一步就花了一天的时间,网上都没有详细步骤,下面本人贴出步骤,希望后人继续探索,如果成功了,还望告知于我,不甚感激。

工具:virtualBoxvirtio驱动

其中virtio驱动windows7下载2019年之前发布的是可用的。最新版不支持windows7。

此处设置如下就可以在虚拟机中自动加载iso文件,也可以在顶部设备-》分配光驱中选择下载的*.iso文件:

virtio gpu驱动 virtio-gpu win驱动_openstack

加载后的光驱显示如下:

virtio gpu驱动 virtio-gpu win驱动_感叹号_02

然后打开计算机管理,添加过时硬件:

virtio gpu驱动 virtio-gpu win驱动_virtio_03

virtio gpu驱动 virtio-gpu win驱动_感叹号_04

virtio gpu驱动 virtio-gpu win驱动_openstack_05

virtio gpu驱动 virtio-gpu win驱动_openstack_06

virtio gpu驱动 virtio-gpu win驱动_openstack_07

virtio gpu驱动 virtio-gpu win驱动_感叹号_08

virtio gpu驱动 virtio-gpu win驱动_windows_09

virtio gpu驱动 virtio-gpu win驱动_openstack_10

至此,驱动安装完成,但是有个感叹号,我们的驱动并没有正常工作。关机后重启,将磁盘改为virtio,虚拟机就是找不到磁盘的问题。同理,即使在修复阶段安装了新的驱动,可以识别出磁盘,并告诉你系统的相关信息,但是修复后开机依然找不到磁盘。

正解

使用新的工具:virt-manager

其实方法和上面类似,现在的解决方法就是想办法将virtio驱动安装进虚拟机并使其生效!该方法在国外论坛讨论比较多,可以参加该提问。

使用virt-manager打开vmdk格式的虚拟机,步骤如下:

virtio gpu驱动 virtio-gpu win驱动_感叹号_11

virtio gpu驱动 virtio-gpu win驱动_virtio_12

这里我提前将文件拷贝到红色路径下了,你可以直接点击“+”选择自己的虚拟机镜像。

virtio gpu驱动 virtio-gpu win驱动_virtio_13

virtio gpu驱动 virtio-gpu win驱动_openstack_14

virtio gpu驱动 virtio-gpu win驱动_windows_15

进入自定义。

virtio gpu驱动 virtio-gpu win驱动_openstack_16

virtio gpu驱动 virtio-gpu win驱动_virtio gpu驱动_17

virtio gpu驱动 virtio-gpu win驱动_virtio_18

开机界面如下:

virtio gpu驱动 virtio-gpu win驱动_感叹号_19

上面第一个设置出错的话,是无法进入系统的,问题也是找不到磁盘,修复无果。下面我们开始安装virtio驱动。先关机。

virtio gpu驱动 virtio-gpu win驱动_感叹号_20

virtio gpu驱动 virtio-gpu win驱动_windows_21

virtio gpu驱动 virtio-gpu win驱动_windows_22

virtio gpu驱动 virtio-gpu win驱动_openstack_23

virtio gpu驱动 virtio-gpu win驱动_virtio gpu驱动_24

virtio gpu驱动 virtio-gpu win驱动_windows_25

virtio gpu驱动 virtio-gpu win驱动_virtio_26

我进入系统后,发现新磁盘没有被挂载。于是手动安装了virtio驱动,步骤和前面一致。然后重启windows,新磁盘被发现了。

virtio gpu驱动 virtio-gpu win驱动_virtio gpu驱动_27

virtio驱动,有一个是没有感叹号的!!!

virtio gpu驱动 virtio-gpu win驱动_windows_28

下面关机,将新加的磁盘删除,然后设置原磁盘为virtio格式。

virtio gpu驱动 virtio-gpu win驱动_virtio_29

再次开机,搞定!!!

virtio gpu驱动 virtio-gpu win驱动_virtio gpu驱动_30

该问题花了我三天时间,将新镜像导入到openstack也是可以的!!!走过路过,点赞可不为过!!