Auto-Resize Display for Windows 10 Guests on Ubuntu 20.04 Hosts

Stock installations of Windows 10 in VirtualBox on Ubuntu systems do not allow to automatically scale the display to the host resolution. Especially if you have a display with a high resolution, such as 3480x2160, you might have to do some configuration tweaking to get this feature going.

The number of steps can depend on the configuration of your Windows 10 VM. Not all of the steps might be required. Try as many as you need to get it going.

We now assume that you already

  • installed the Windows 10 guest
  • booted into the Windows 10 guest
  • realized that auto-resizing is not working yet

The first check that you can do is to determine if the auto-resize option is available on your guest. This can be done by examining if the menu option is available:

If this link is active, then you probably already installed the VirtualBox Guest Additions. If it’s grey and not selectable, then you first need to install the guest additions.

Installing the VirtualBox Guest additions

VirtualBox provides a way for you to download the Guest Additions from within the program. Select the option “Insert Guest Additions CD image” from the Device menu entry:

If the Guest image is not available, Virtualbox will offer you an option to download the image. Let it download the image, and insert it into the VM.

After the download is completed, install the additions in your Windows 10 host. The installer will ask you to reboot after the installation is completed. Do the reboot and check your View menu again to see if the option “Auto-resize Guest Display” is now active. You must log in and wait for the Guest additions to start up properly before the option will become active. Depending on the resources that you allocated to the machine, this can take a while.

If it does not become active, then first try to power off the guest completely (shut it down and restart it after it has been completely powered off).

If the option is active, but the guests’ window does not auto-resize, then go and check the available screen resolutions within the guest. Right click on the desktop and select Display Settings. That will open the settings menu and show you the available Screen resolutions:

If there are only few low-resolution options available, then you probably assign to little video memory or used the wrong graphics emulation.

Adjusting the Guests’ Graphics Settings

If installing the VirtualBox Guest Additions didn’t resolve the problem for you, then you might have to tweak the VM settings. Power down the guest to be able to change its options. Go and edit the settings of the VM. We are interested in the Display Settings as shown below:

Be sure to increase the video memory to the maximum of 256MB. This should make more resolutions available inside the Virtual Machine. First try restarting the machine with updating this setting. It could already resolve your issue.

If that doesn’t work, then try using a different Graphics Controller. In one of my setups, only the “VBoxVGA” controller did allow to auto-resize the window. Power-on the machine, log in and check if you can autor-resize the box.

Be sure to always wait for some time to let the guest additions start up. Auto-resizing the window only works after the additions have been started. And that seems to be completed pretty late in the process (and only after you logged in).