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>

Any other suggestion, something that I was missing.

Thanks in advance,

  • have you installed the Guest Additions? – JoshP Sep 24 '12 at 20:52
  • 2
    Until now, there are no Guest Additions for MacOS Guest. – Pymoo Sep 25 '12 at 8:58
up vote 19 down vote accepted

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:


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>
<key>Kernel Flags</key>
<string>"Graphics Mode"="1920x1080x32"</string>

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

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

<key>Graphics Mode</key>
<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.

  • 3
    Thanks, it looks like this could be overkill. I got it working in far fewer steps: Just altered the "1920x1080x32" string to my resolution in /Extra/com.chameleon.Boot.plist and added the CustomVideo1 setting to the vbox file for the VM. – Sam Salisbury Mar 11 '13 at 15:23
  • 2
    Thanks for the answer; I altered each of the settings noted above one at a time, and it didn't work until I got to the vboxmanage settings. However, I set CustomVideoMode1 and GUI/CustomVideoMode1 to 1920x1080x32, and EfiGopMode to 5 (someone on another forum mentioned that being correct, yet undocumented, for 1920x1080). Of course, I sub'd my own machine name in the commands. What I didn't understand, and didn't try, were the 1360x768 values if you're going for 1920x1080. – s.co.tt Nov 1 '13 at 19:22
  • setting EfiGopMode is the only step necessary here – gordy Apr 23 '15 at 5:05
  • 1
    Tried the same for Mavericks and did not work :( – Mukus Aug 8 '15 at 9:26
  • 2
    The new way is VBoxManage setextradata "VM name" VBoxInternal2/EfiGraphicsResolution HxV, as specified here and here. (I can't create an answer for lack of reputation) – B3ret Feb 20 at 12:08
VBoxManage setextradata "mac" "VBoxInternal2/EfiGraphicsResolution" "1920x1080"

did the trick for me on high sierra

  • 3
    only this worked for me. – Tamás Barta Nov 7 '17 at 13:41
  • @TamásBarta are you working on high sierra too? – cyptus Nov 7 '17 at 13:53
  • 1
    yes, from Arch Linux host – Tamás Barta Nov 7 '17 at 14:00
  • Didin't work for me on Ubuntu 17 – Chlebta Dec 5 '17 at 11:13
  • Worked for me; High Sierra, Arch host, 2560x1080 res. – jdersen Dec 23 '17 at 8:08

For the record, I found this advice that allowed me to change the resolution:

VBoxManage setextradata "vmname" VBoxInternal2/EfiGopMode 3

where the last param is one of:

0 – 640×480
1 – 800×600
2 – 1024×768
3 – 1280×1024
4 – 1440×900
5 – 1920×1200 

I'm running VBox 5.0.14 on OSX 10.9 (host), and the guest is OSX 10.11.

  • 4
    Are there higher resolutions using these numbered settings? – user225451 Aug 27 '16 at 0:41
  • This works for the fixed resolutions available in the list. 1440×900 worked for me as it was same as my host resolution and i could move the guest to full screen and it was neat! – Vikram Rao Mar 10 '17 at 11:50
  • I have fedora 25 as host, and OSX sierra as guest (from vagrant box). This method worked for me, thanks a lot! – Pavel Davydov Apr 20 '17 at 9:25
  • This worked for me, with doing nothing else and setting nothing else. Also, do yourselves a favor and take a snapshot before. – kontur Jan 13 at 12:02

I followed @winitzki and these are the steps I did.

I want to set the resolution to 1920x1080, change yours accordingly.

Backup files before editing.

  1. sudo vi /Extra/com.chameleon.Boot.plist

Add the following inside <dict></dict>

<key>Graphics Mode</key>

Update the value for Kernel Flags key with

"Graphics Mode"="1920x1080x32"

Final should have the following 4 lines (note some extra data in Kernel Flags, keep them as is):

<key>Graphics Mode</key>
<key>Kernel Flags</key>
<string>npci=0x3000 "Graphics Mode"="1920x1080x32"</string>
  1. Shutdown VM.

  2. Update VirtualBox config.

My VM Name is "MAC".

vboxmanage setextradata "MAC" CustomVideoMode1 1920x1080x32
vboxmanage setextradata "MAC" "GUI/CustomVideoMode1" 1920x1080x32
vboxmanage setextradata "MAC" VBoxInternal2/EfiGopMode 5
  • On macOS 'El Capitan' in VBox 5.1 it is enough only last 3 strings about setextrasettings. – kyb Oct 3 '17 at 13:22

protected by Community Nov 6 '13 at 9:44

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

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.