Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I created an Ubuntu 14.04 desktop VM using VirtualBox, and installed guest additions. By default, at startup, VBox wants to present the guest's GUI in a parrticular size that is smaller than my actual monitor. But when I switch to either full screen or scaled mode, instead of resizing everything smoothly (like a vector image) it makes everything fuzzy and grainy, and hard to look at.

What can I do to fix this?

share|improve this question
1  
Once you've fixed this issue, be sure to turn on graphics acceleration for the VM in it's VirtualBox settings. –  Jon May 15 at 15:42

5 Answers 5

up vote 4 down vote accepted
+125

The window size is controlled by the VM's screen resolution. If you manually resize the window on the host you'll only zoom on the image returned by the VM, so of course this gives a very bad image quality.

Change the screen's resolution in the VM's configuration, either via the GUI, or directly via the command line with xrandr.

First run xrandr with no arguments, it'll display all outputs (in this case they're just the virtual outputs emulated by VirtualBox).

Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192
VGA1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
...

Now run xrandr --output <output> --size <resolution> and replace "output" and "size" with the connected output that you got from the previous command (in this case VGA1) and the resolution you want to set, I recommend setting it just a bit lower than your actual monitor to leave space for the taskbar and Virtualbox window title bar.

Example : xrandr --output VGA1 --size 1920x1040.

Once you set the resolution in the VM, VirtualBox will automatically resize its window on the host.

By the way, here's the official Ubuntu documentation about changing the screen's resolution.

share|improve this answer
    
This is all good, but Virtual Box should support this after correct installation of Guest Additions. –  KronoS May 15 at 23:11

When using VirtualBox the default resolutions are limited to just a few common resolutions. In order to enable the native resolution of your monitor you'll need to properly install the Guest Additons. Here's how you do this within Linux:

  1. Mount the Guest Additions by selecting Devices --> Insert Guest Additions CD image... Ya I know it's fedora
  2. run the VBoxLinuxAdditions.run script within the newly mounted cd
  3. wait for it to do it's business and then restart the Guest OS

After you run this, VirtualBox should automatically resize the Guest resolution to the window size. Pressing right Ctrl + F will toggle full screen of that monitor.

share|improve this answer
    
+1 it works, thanks –  Tamir Nov 2 at 15:03

Was the installation of guest additions successful? You can check this by going to View menu and see if 'Auto-resize guest display' is enabled. Click this.

Without the successful installation of guest additions, VirtualBox does not re-adjust guest resolution automatically, so graphics inside VM may look grainy/broken on bigger screen.

NOTE: I have VirtualBox 4.3.10 and Ubuntu 14.04 amd64 and guest additions don't work properly on it for me too, so I assume I will have to wait for next VBox version.

share|improve this answer

Things to consider :have you updated graphics drivers for the host machine? Do you get similar issues for a different guest (e. g. Linux mint or any other distro)? Does the guest vm have enough graphics resources to deal with full screen animations? By default IIRC VirtualBox assigns about 20mb for video for the guest .

Try giving the guest more resources. 128 mb video ram and 1gb Ram should get you started. Depending on what graphics card you have it may not be able to cope with visual effects. Give a standard desktop environment (e. g. Xfce with no composting) a try. If symptoms persist it is likely either a driver issue or a virtual box issue. Try upgrading virtual box to a later version.

share|improve this answer

Unfortunately, xrandr failed to work for me. I tried changing the guest resolution with GUI, but a higher resolution was not listed.

Installing the VirtualBox Guest additions auto-magically solved my problem. To do this, click the Devices menu > Insert Guest Additions CD Image... (or you can press Host + D). Ubuntu will ask you if you want to allow the CD to automatically run a program. Confirm and provide your password (the root password) and you are done.

You can use the full resolution of your Host display by entering fullscreen (Host + F) after rebooting the Guest system.

EDIT:

It appears that the Guest Additions are analogous to installing driver software. The manual says

They consist of device drivers and system applications that optimize the guest operating system for better performance and usability.

You might have experienced something similar if you ever tried adding a graphics card to your system. Before you install the proper drivers, the screen resolution is low, and everything is pixelated (if there is such a term).

I believe that this is a safety measure, to ensure that the OS will work with all kinds of displays.

share|improve this answer

protected by KronoS Nov 3 at 12:45

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.