Jump to content

- - - - -

Booting Mac OSX from a VHD/ IMG/ DiskImage file?

mac osx vhd img disk-image

  • Please log in to reply
1 reply to this topic

#1 crashnburn


    Frequent Member

  • Advanced user
  • 128 posts

Posted 19 October 2015 - 10:43 AM

Booting Mac OSX from a VHD/ IMG/ DiskImage file?


Given that

- VHD native booting exists for Windows. 

- VHD is same as Disk Image with few more bytes, and can be booted with older Windows e.g. XP & Linux'es

- Hackintosh's can be booted with help of Chameleon/ Chimera boot loaders

- Mac OSX is derived off a *nx OS.. 


Shouldn't this be possible/ not to tough to make happen? 

  • TheHive likes this

#2 deek5



  • Members
  • 14 posts

Posted 16 March 2018 - 12:21 AM

hello to all, I use grub4dos, little memo for my use of Grub4Dos to launch chameleon or throw chameleon and a Mac OS X system link to a DMG or VHD file, from the boot of Windows. In absolute terms it must implement 7 maneuvers to arrive at the result, but by automating a little, it does with 3 manipulations.

The goal is to have the ability to start a Mac os x system on Windows startup, I use it to check that my mac os x backups in dmg or vhd are functional and error-free

I am using Visual BCD to create an opening choice of /Grub4/grub.exe in the Windows BCD (BCD Windows Startup Store).

First of all have a DMG system or file from an existing Mac OS X installation. After having at least one HFS partition.

It is necessary to create an Iso or a Vhd, mounted under mac os this iso or this vhd or this DMG, intaller chameleon with a folder Extra, in this file we will place the kernel (mach_kernel or kernel) of the desired system, the kernelcache of the same system, the boot.plist (org.chameleon.Boot.plist) containing the options for your boot plus the kernel option for the kernel file, the kernelcache option for the cache to use, the Kernel Flags option - v -s rd = uuid boot-uuid = (the uuid of the hfs partition containing the DMG or Vhd to mount), rp = file: ///MacLion.dmg (the DMG file of the system to be mounted which is on the hfs partition which we gave the UUID), example of a Kernel Flags

Kernel Flags String PciRootUID = 0 rd = uuid boot-uuid = B61C6FED-DB6F-3B84-8D39-E933A2DF1312 rp = file: ///MacLion.dmg -v -s npci = 0x2000

<key> Kernel Flags </ key>
<string> PciRootUID = 0 rd = uuid boot-uuid = B61C6FED-DB6F-3B84-8D39-E933A2DF1312 rp = file: ///MacLion.dmg -v -s npci = 0x2000 </ string>.

to create an iso under Mac Os X mountable by Grub4Dos, one creates a folder or a dmg (preferably a dmg read and write) where one installs chameleon (if it is a file one copies in this file the file Extra, the file usr, the boot file) we use hdiutil in the terminal

with the following options for a dmg create which bears the name "base.dmg" and which is mounted

sudo hdiutil makehybrid -o /base.iso / Volumes / base -iso -hfs -joliet -eltorito-boot / Volumes / base / usr / standalone / i386 / cdboot -no-emul-boot -hfs-volume-name "base" -joliet-volume-name "base" - iso-volume-name "base"

the command will create a base.iso file at the root (/base.iso), this file will be created from the mounted.dmg database (/ Volumes / base)

with the following option for a folder (this folder is on the desktop) containing chameleon and folders (Extra, usr)

sudo hdiutil makehybrid -o /base.iso ~ / Desktop / base -iso -hfs -joliet -eltorito-boot ~ / Desktop / base / usr / standalone / i386 / cdboot -no-emul-boot -hfs-volume-name " baseiso "-joliet-volume-name" base "-iso-volume-name" base "

the command will create a base.iso file at the root (/base.iso), this file will be created from ~ / Desktop / base the ~ replaces "/ Users / yourname" (~ / Desktop / base)

Once the iso is created, you copy it to a windows partition (ntfs).

In the menu.lst of grub4dos (for Yosemite for example)

"find --set-root - ignore-floppies - ignore-cd / yos.vhd
map /chamyos.vhd (hd4,0)
map --hook
map --harddrives = 4
rootnoverify (hd4,0)
chainloader (hd4,0) +1
boot "

or for an Elcapitan iso

"title Elcapitan
find --set-root --ignore-floppies --ignore-cd /elcap.iso
map --mem /elcap.iso (hd32)
map --hook
rootnoverify (hd32)
chainloader (hd32)
boot "

After grub4dos, your new "bootloader" "chameleon or Enoch" is displayed, in the choice of start you see your iso or vhd, you select it, the boot of the mac os x is realized after mounting the dmg or vhd until at the mac os x command-line entry (kernel flags -s option), i'm using a modified version of /private/etc/rc.netboot that is present on all mac os x. So once in the command line at the root, you type in "/private/etc/rc.netboot" and then "/ exit" to continue booting your mac os x.

you have downloaded a version of Grub4Dos (version 0.4.6a) and install it from Windows (for reminder all this is possible if only if you already have an existing mac os x system, means to read, write and create partitions (volumes) HFS +, NTFS (ex: Paragon NTFS for Mac and Paragon HFS for windows).

All that is written above is from the google translation, I apologize if it is badly translated.

Maybe you think that all this is not very useful, I understand very well, basically I wanted to boot from windows, it turned out that Apple does not treat virtualization directly for its system. exploitation (unlike window which since windows 7 allows to use vhd as operating system)

Thanks for reading.

Also tagged with one or more of these keywords: mac, osx, vhd, img, disk-image

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users