How to automatically install guest drivers inside a Windows VM

Cameron Showalter cameronsplaze222 at gmail.com
Mon Apr 25 21:44:45 UTC 2022


> Are you installing on existing VMs or on new VMs as you create them?

I'm down for either! My main goal is to find a way that works across all
windows OS's. (I.e if virtio-win gets updated to support `windows 12` one
day, my script gets it for free. I only maintain an overall "windows"
script).

> slipstream the drivers into the gold Windows image using DISM

I had to do some research on this, it's a great idea! I can't find a way to
slipstream windows drivers on linux though. I think that means I'd have to
spin up a windows VM, mount in the iso and modify it, then delete the
original VM. Then spin up a new one with the modified ISO? That's a lot of
steps to automate. Though I found a good guide on slipstreaming virtos
drivers here:
https://github.com/Zer0CoolX/proxmox-windows-slipstream-virtio-drivers. It
would be nice to be able to save updates to the iso too, so I hope there's
an easier way I'm missing.

Thanks!
Cameron


On Sun, Apr 24, 2022 at 10:59 PM Peter Crowther <peter.crowther at melandra.com>
wrote:

> Are you installing on existing VMs or on new VMs as you create them? If
> the latter, slipstream the drivers into the gold Windows image using DISM:
> https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/add-and-remove-drivers-to-an-offline-windows-image?view=windows-11
>
> Cheers,
>
> Peter
>
> On Mon, 25 Apr 2022, 00:28 Cameron Showalter, <cameronsplaze222 at gmail.com>
> wrote:
>
>> I'm trying to write an automatic way to install drivers inside guests,
>> and I'm starting with Windows first. I'm trying to follow this guide here:
>>
>>
>> https://access.redhat.com/documentation/en-us/red_hat_virtualization/4.4/html/virtual_machine_management_guide/installing_guest_agents_and_drivers_windows
>>
>> So I install virtio-win to the host, and mount that as a cd-rom inside
>> the Windows 10 VM. I then want to install ALL drivers and agents like so
>> (Command Prompt as Admin, go to the drive letter the iso is mounted as
>> before running this):
>>
>> start /wait msiexec /i "virtio-win-gt-x64.msi" /qn ADDLOCAL=ALL
>> <wait a few minutes JUST TO BE SURE it finished>
>> <restart VM>
>>
>> And from what I can tell, it works. I can go into device manager, and see
>> drivers for virtio-balooning  / etc. The problem is in virt-manager, going
>> to "View: Scale Displays: Auto-resize VM with window", and it's still
>> greyed out. (Says Guest Agent is not available). Going to "View: Consoles",
>> it says I have "Graphical Console Spice" selected. Any idea what I might be
>> doing wrong?
>>
>> And, is this the right approach for automatic guest drivers? Mounting the
>> iso, then use something like "virsh x-exec" to run that msiexec command
>> above.
>>
>> Thanks!
>> Cameron
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/virt-tools-list/attachments/20220425/74677dd4/attachment.htm>


More information about the virt-tools-list mailing list