Howto: Boot existing Ubuntu Partition using Virtualbox inside Windows


Recommended Posts

This is a tutorial I wrote up and posted up on my blog.

I recently got Windows 7 and Ubuntu running in a dualboot. However, since I’m using more of Windows now I figured I should probably find a way to run Ubuntu inside my Windows. VM’s are great, but it’d be better if I can actually boot into my existing Ubuntu partition. So I searched the web and kept on finding tutorials on how to boot existing XP partitions inside Windows. So I decided to extrapolate from those tutorials and work my way through it. I’ll be writing how I did it here.

Before we begin, you should have a dual boot setup. I will NOT be showing you how to setup a dual boot, if you need help plenty of other guides out there.

Step 1: Creating a grub boot iso

The grub iso file will allow you to specify which partition to boot into.

1. Boot into Ubuntu

2. We create the folders and copy the necessary files to setup an isoRun the command:

cd; mkdir -p iso/boot/grub; cp /usr/lib/grub/*-pc/stage2_eltorito /boot/grub/menu.lst iso/boot/grub

3. Configure your ~/iso/boot/grub menu.lst file to boot your target OS (in this case Ubuntu). Remove the “savedefault” option from your target entry if it exists.

4. We now create the bootable iso fileRun the command:

cd; mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o grub.iso iso

5. Move the iso to a location that’ll be accessable by your Windows partition

Step 2: Creating the .vmdk file

This creates a file which tells Virtualbox what partition to actually load as the harddrive. Unfortunately, unlike VMWare Workstation, Virtualbox does not support a GUI interface for selecting RAW hard disks as the “virtual hard drive”.

1. Boot into Windows

2. cd into the directory you installed virtualbox

3. We find the partition number that needs to be mountedRun the command:

VBoxManage.exe internalcommands listpartitions -rawdisk \\.\PhysicalDrive1

(where 1 is the number of the hard drive ubuntu is installed on. E.g. Master should be 0, you’re second hard-drive should be 1 etc…The output should be something like:

	  Number  Type   StartCHS	   EndCHS	  Size (MiB)  Start (Sect)
	  1	   0×07  0   /32 /33  1023/254/63		902023		 2048
	  5	   0×83  1023/254/63  1023/254/63		 49677   1847346543
	  6	   0×82  1023/254/63  1023/254/63		  2164   1949086188

In this example, my Ubuntu partition is number 5 and the swap is number 6

4. We now create the VMDK file with the given informationRun the command:

VBoxManage.exe internalcommands createrawvmdk -filename C:\path\ubuntu.vmdk -rawdisk \\.\PhysicalDrive1  -partitions 5,6 -register

Step 3: Setup Virtualbox

Now everything should be ready to setup Virtualbox. Create a new virtual machine. Select the .vmdk file we just created as the hard drive and mount the grub.iso file we created at Step 1. If everything was successful Ubuntu should boot up nicely.

Edited by PCBEEF
  • Like 1
  • 1 month later...

Wonderful! I created an account on this site just to thank you!

I just have one small problem: Not able to run the guest at more than 800x600 resolution. I'll try my best to find out a way. If there isn't one, I'll just ignore it.

*Edit*

Nevermind, I just needed to install the VirtualBox guest add-ons and it worked!

Edited by Druglord
  • 2 weeks later...
Wonderful! I created an account on this site just to thank you!

I just have one small problem: Not able to run the guest at more than 800x600 resolution. I'll try my best to find out a way. If there isn't one, I'll just ignore it.

*Edit*

Nevermind, I just needed to install the VirtualBox guest add-ons and it worked!

I'm glad that my post helped you out :)

  • 2 years later...

Hi, first of all great and useful tutorial.

I just started to set up Windows7 and Ubuntu 11.10. I choked at the line


cd; mkdir -p iso/boot/grub; cp /usr/lib/grub/*-pc/stage2_eltorito /boot/grub/menu.lst iso/boot/grub
[/CODE]

You (or anyone) got any idea how this works in a recent version of ubuntu?

I'm completely new to unix so I got no idea. :s

regards, mouszeman

can you use this the other way round, i would like to use more ubuntu and less windows, but i want dual boot if needed. would be nice to use the current windows7 i have installed as virtualbox, under ubuntu. BTW if possible if i boot into windows (normal boot) would this do bad things?

  • 4 months later...

Brilliant!!! I spent enormous time solving this booting problem. This post helped finally! Many other posts on this issue point to the fake mbr way which I tried but got no luck. I guess the problem is all about helping virtualbox find the right boot record. The boot iso method is not the perfect way to do that since it depends on boot iso image but it's absolutely an ingenious method! Thank you very much!

Hi, first of all great and useful tutorial. I just started to set up Windows7 and Ubuntu 11.10. I choked at the line
 cd; mkdir -p iso/boot/grub; cp /usr/lib/grub/*-pc/stage2_eltorito /boot/grub/menu.lst iso/boot/grub [/CODE]

You (or anyone) got any idea how this works in a recent version of ubuntu? I'm completely new to unix so I got no idea. :s regards, mouszeman

In ubuntu 11.10 I use grub-mkrescue which can make rescue iso image for your system.

  • Make your own iso directory (e.g. /root/iso/boot/grub/) and copy /usr/lib/grub/i386-pc into it.
  • Copy /boot/grub/grub.cfg into /root/iso/boot/grub/
  • Run command: grub-mkrescue -o boot.iso /root/iso/ (I encountered an error about xorriso in the first time and "apt-get install xorriso" made it go away.)

After all those steps, you'll get your iso image. And then follow the other steps metioned by Jexel. Good luck!

  • 3 months later...

In ubuntu 11.10 I use grub-mkrescue which can make rescue iso image for your system.

  • Make your own iso directory (e.g. /root/iso/boot/grub/) and copy /usr/lib/grub/i386-pc into it.
  • Copy /boot/grub/grub.cfg into /root/iso/boot/grub/
  • Run command: grub-mkrescue -o boot.iso /root/iso/ (I encountered an error about xorriso in the first time and "apt-get install xorriso" made it go away.)

After all those steps, you'll get your iso image. And then follow the other steps metioned by Jexel. Good luck!

Hi, I didn?t check back for some time, but now I found your reply.

I did create the ISO the way you described, and managed to create the ISO.

After initial problems when I did not start Virtualbox as admin I got to the grub-screen.

Unfortunately, after that I got an error screen:

vbox_error.png

I found these two threads that seem related and also reference this current thread:

https://forums.virtualbox.org/viewtopic.php?f=6&t=38914#p175089

https://forums.virtualbox.org/viewtopic.php?f=6&t=49850

Regards, mouszeman

  • 2 months later...
  • 6 months later...

First: Excellent post!

Unfortunately, it didn't work for me: starting the VM gives it a black screen and then nothing happens.

Trying to run dualbooted Xubuntu 12.4.1 from within Windows 7 64bit.

After creating the grub files and ISO in Xubuntu as directed, I used these commands to create the VMDK:

C:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands listpartitions -rawdisk \\.\PhysicalDrive0

Number Type StartCHS EndCHS Size (MiB) Start (Sect)

1 0x07 0 /32 /33 153 /27 /2 1200 2048

2 0x07 153 /27 /3 1023/254/63 384738 2459648

5 0x83 1023/254/63 1023/254/63 72999 790405120

6 0x82 1023/254/63 1023/254/63 1999 939909120

3 0x07 1023/254/63 1023/254/63 16000 944003072

C:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands createrawvmdk -filename C:\ubuntu.vmdk -rawdisk \\.\PhysicalDrive0 -partitions 5,6

That actually created 2 files:

ubuntu.vmdk

ubuntu-pt.vmdk

however, it would only let me mount the first one.

UPDATE:

I had not correctly mounted the .iso file. When that's selected in the VM, it successfully boots from the iso and goes through the GRUB selection screen. However, then it says "file not found." (attached).

Any tips?

post-483760-0-44266700-1362720466.png

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • DiskGenius 6.2.0.1829 - All Versions: Free, Lite & Portable by Razvan Serea DiskGenius is a full-featured partition manager, which is designed to optimize disk usage for Windows users. It will efficiently help you recover lost data, resize/split partition, backup files, edit hex data, check bad sectors, manage virtual disks, erase data, etc.. Create a system image backup for current Windows with simple clicks to keep the operating system under protection. DiskGenius key features: Partition Management - It can create format, resize, extend, backup, split, hide and clone partition, both MBR and GPT are supported. Disk and partition conversion - Convert dynamic disk to basic, convert virtual disk format and convert MBR to GPT, convert primary partition to logical. File recovery - It can recover files deleted or emptied form recycle bin, recover files from damaged partition or disk and recover files by file type and supports file preview and file filter. Partition recovery - It is the best partition recovery program in that it can recover files from damaged, corrupted and RAW partitions, search for lost partition and recover files from it, besides, it can fix partition table. RAID recovery - It can reconstruct Virtual RAID and recover files from it, and all RAID types are supported. Sector Editor - A Hex editor is embedded to help users edit raw hex data and recover data manually. Backup and Restore - It can backup and restore partition including system partition, hard disk and partition table. Bad Tracks - It can check and repair bad sectors for all storage devices; check hard disk S.M.A.R.T. information. Delete files permanently - It can delete files permanently so that they can't be recovered by any data recovery software. Virtual Disk - It supports virtual disks, including VMware, Virtual PC and Virtual Box. Create WinPE bootable disk and you can manage disk partition when system crashes or there is no operating system on your computer. Support FAT12/FAT16/FAt32/exFAT/NTFS/EXT2/EXT3/EXT4 file system format. DiskGenius 6.2.0.1829 changelog: Add the "Disk Speed Test" feature. Add the "Windows Boot Repair and Conversion" feature. Add the BMB21-2019 erase standard to the "Erase Sectors" feature. Add support for restoring an individual partition from a PMFX disk image file. Enhanced The "Verify Or Repair Bad Sectors/Blocks" feature displays disk read speed in the detection window during scanning. The "Quick Partition" dialog box allows users to quickly select the number of partitions by pressing the numeric keys 1, 2, 7, 8, or 9. The "Set Volume Name" dialog box supports selecting preset volume labels provided by the software. The "Copy Sectors" feature supports resuming copy tasks after modifying the number of skipped bad sectors. Add the "TRIM Optimization" option to the format dialog box. The "Clone Partition" and "Clone Disk" features perform TRIM optimization on target partitions or disks before cloning. Add support for Not Equal To search conditions (prefixed with "!") when searching hexadecimal data in the sector editor. Optimize the display of capacity values in the program interface to show two decimal places. Add a minimize button to dialogs that may require long processing time. Enhance support for the ReFS file system. Enhance support for newer HIF and MP4 formats when recovering files by type. Enhance support for the EXT4 file system. Enhance compatibility of the "File Recovery" feature with special data structures. Fixed Fixed the issue that the selected file system type automatically reverted to NTFS after changing it to exFAT or EXT4 in the "Quick Partition" dialog box. Fixed inaccurate Unicode string search results in the "Sector Editor" feature. Fixed the issue that exceptions might occur when adding multiple disks in the "Erase Sectors" feature. Fixed the issue that insufficient target disk space was incorrectly reported in some cases when cloning, backing up, or restoring disks. Fixed the issue that folder modification timestamps were not preserved when copying files from ReFS partitions. Fixed the issue that Excel-format reports generated by features such as file copying or bad sector checking could not be opened when the report contained more than one million rows. Fixed the issue that folders were not displayed in the exclude-folder dialog box when backing up partitions to image files. Fixed the issue that the "Erase Sectors" feature could not be executed in some cases. Download: DiskGenius 6.2.0.1829 | 63.9 MB (Freeware, paid upgrade available) Download: DiskGenius Portable 64-bit | 40.0 MB Download: DiskGenius Portable 32-bit | 36.0 MB Download: DiskGenius Lite 64-bit | 13.4 MB Download: DiskGenius Lite 32-bit | 11.6 MB View: DiskGenius Home Page | DiskGenius Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • Really? Use a better search engine https://www.google.com/search?...ourceid=chrome&ie=UTF-8
    • Seems like Neowin has transitioned into being simps for the white house. I can't find a review for the last UFC games that came out.
  • Recent Achievements

    • Week One Done
      agatameier earned a badge
      Week One Done
    • One Month Later
      agatameier earned a badge
      One Month Later
    • Week One Done
      ssd21345 earned a badge
      Week One Done
    • Contributor
      MarkHughes4096 went up a rank
      Contributor
    • Dedicated
      jordanspringer earned a badge
      Dedicated
  • Popular Contributors

    1. 1
      +primortal
      513
    2. 2
      +Edouard
      182
    3. 3
      PsYcHoKiLLa
      141
    4. 4
      ATLien_0
      94
    5. 5
      Steven P.
      75
  • Tell a friend

    Love Neowin? Tell a friend!