MacOS – Change Guest Screen Resolution in VirtualBox

macosvirtual machinevirtualbox

I have tried all alternatives and resources that I found on internet to achieve to change screen resolution in my MacOS X guest. I have the latest VirtualBox version (4.1.22) and I have MacOS X 10.6.3 Snow Leopard running in a vm guest.

Some solutions that don't work for me are:

  • Tuning virtual machine settings:

Adding and in the .vbox file, or running these two commands:

vboxmanage setextradata "MAC OS X" "CustomVideoMode1" "1360x768x32"
vboxmanage setextradata "MAC OS X" "GUI/CustomVideoMode1" "1360x768x32"
  • Editing Guest OS boot configuration:

Modify /Library/Preferences/SystemConfiguration/com.apple.boot.plist with these lines:

<key>Kernel Flags</key>
<string>"Graphics Mode"="1360x768x32"</string>
<key>Graphics Mode</key>
<string>1360x768x32</string>

Any other suggestion, something that I was missing.

Thanks in advance,

Best Answer

I am using VirtualBox under Ubuntu Linux, and a Mac OSX (Mountain Lion) as guest OS.

For me, the full resolution started working when I did all of the following:

0) Install MultiBeast 4, making sure that the system boots from the virtual hard disk rather than from any booting CD. I followed the instructions here:

http://www.macbreaker.com/2012/07/mountain-lion-virtualbox.html

However, at the end of the procedure I did not have the full resolution, which for me must be 1920x1080x32.

1) In the virtual machine, edit these PLIST files,

sudo pico /Extra/com.apple.boot.plist/Library/Preferences/SystemConfiguration/com.apple.Boot.plist

In this file, inside <dict>...</dict>, insert:

<key>Graphics Mode</key>
<string>1920x1080x32</string>
<key>Kernel Flags</key>
<string>"Graphics Mode"="1920x1080x32"</string>

sudo pico /Extra/com.chameleon.Boot.plist

In this file, inside <dict>...</dict>, insert:

<key>GraphicsEnabler</key>
<string>y</string>
<key>Graphics Mode</key>
<string>1920x1080x32</string>
<key>Kernel Flags</key>
<string>npci=0x3000 darkwake=0 "Graphics Mode"="1920x1080x32"</string>

I noticed that I already had some "kernel flags", so I just added another one for "Graphics Mode". Also note that "Graphics Mode" has a space inside it.

2) Shutdown the virtual machine and do the commands

vboxmanage setextradata "MAC OS X" "CustomVideoMode1" "1360x768x32"
vboxmanage setextradata "MAC OS X" "GUI/CustomVideoMode1" "1360x768x32
VBoxManage setextradata MountLion VBoxInternal2/EfiGopMode 3

After this, the virtual machine boots with full resolution.

Now, this might be overkill, and the result could be achieved perhaps with fewer options, but I tried various things until it started working.

Related Question