I am trying to boot Ubuntu 12.04 (64bit) by using UEFI in VirtualBox. When using UEFI boot in Virtualbox, I instantly get dropped into EFI-shell. I looked this up online and did as explained in this thread. When I do as explained in the thread, I get "efidisk read error". Despite this error, it somehow still boots into Ubuntu, but I end up in tty1.

I have tried this to avoid getting dropped into EFI-shell without any success.

  1. Why does "efidisk read error" appear?
  2. How do I boot directly into Ubuntu without moving to EFI-shell?
  3. How do I get into lightdm from tty1?
up vote 10 down vote accepted

VirtualBox tends to forget its EFI boot entries. I know of two solutions to this problem:

  • Move/rename the boot loader you're using (probably EFI/ubuntu/grubx64.efi on the EFI System Partition (ESP)) to EFI/BOOT/bootx64.efi. This is the default/fallback filename, and so VirtualBox will boot from it by default if there are no other entries.
  • Use the VirtualBox EFI's menus to locate the boot loader you're using (again, probably EFI/ubuntu/grubx64.efi) and add it as a boot option. I don't recall the precise steps, and the menus aren't exactly user-friendly, but if you poke around in the menus, the options are there.

Doing either of these things should get GRUB starting, but then you've got the second issue, of X not starting. To solve this problem, try this:

  1. Do a text-mode login.
  2. Type sudo su to acquire root privileges.
  3. Type Xorg -configure. This should create a file called /root/xorg.conf.new, IIRC.
  4. Copy that newly-create file to /etc/X11/xorg.conf.
  5. Optionally, edit /etc/X11/xorg.conf. This may or may not be required. Personally, I edit the file to set the fbdev driver as the default, but you may prefer something else. There are lots of online guides to xorg.conf, but I don't have any URLs handy, and it can be pretty complex, so completely describing it here is impractical.
  • 1
    In my case the first gotcha was to type exit into the shell. Then your hint with EFI/ubuntu/grubx64.efi and changing the boot order helped :) - Thanks a lot. I didn't have any issue with the video. – bohdan_trotsenko Apr 23 '14 at 0:19
  • Thanks for the reply, it did indeed fix the issue to a certain extent. However, I did realize one thing before I came to this point; I made some changes in BIOS to only boot in EFI mode (not hybrid), and I also changed my host system from legacy to EFI. – user1608638 Jun 5 '14 at 7:06

As it may be possible to install Ubuntu in Virtual Box EFI mode it may not work as expected. I for myself have given up on this after some failed experiments, and after reading the documentation to Virtual Box :

Note that the VirtualBox EFI support is experimental and will be enhanced as EFI matures and becomes more widespread.

So it can work fine, but like many experimental features it may not work as expected.

For a virtual machine a virtualized EFI firmware does not have any advantages over a virtual legacy BIOS it may (if not for testing) be better to install a virtual OS in legacy BIOS mode.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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