Hello,
It looks like Fusion "Bootcamp" VM hangs on Grub. How to Fix?, but is quite different, so I have created a new discussion.
Symptoms : when trying to boot my BootCamp partition, it hangs at the Grub stage, with no error from Grub. But VMWare Fusion 2.0 beta 1 can output :
Virtual machine kernel stack fault (hardware reset) ***
The virtual machine just suffered a stack fault in kernel mode. On a real computer, this would amount to a reset of the processor. It can be caused by an incorrect configuration of the virtual machine, a bug in the operating system, or a problem in the VMware Fusion software. Press OK to reboot virtual machine or Cancel to shut it down.
Precisions :
I have a Macbook Pro. When installing Leopard, I made 4 partitions (Leopard/ext3 for Linux/FAT32 for XP/FAT32 for Vista).
-I have installed Leopard.
-I have installed refit
-Then, I have installed Windows XP (since my partition was ready, I did not use the BootCamp assistant), and converted FAT32 to NTFS
-Then I have installed Linux Ubuntu 8.04, with Grub.
All work well in native boot.
-When launching VMWare Fusion 2.0 beta 1, it automatically detects a "BootCamp partition".
-If I try to launch it, it fails at the GRUB stage with no error, and does not say anything else (see below for explanation of where the quoted error message comes from)
-So, I tried to create a Virtual Machine by "importing" the BootCamp partition, right inside VMWare Fusion.
-If I try to launch the Virtual machine instead of the "BootCamp partition", it fails at the GRUB stage with no error, and in this case outputs the previously quoted stack fault.
Any idea, workaround ? Should I wait beta 2 ? Replace Grub by LILO ?
Regards,
Pierre
Hello,
I have some news, but still no solutions.
For information, I found only 3 interesting threads that could be linked to the subject :
http://communities.vmware.com/message/757524#757524
http://communities.vmware.com/message/1027198#1027198
http://communities.vmware.com/message/681661#681661
Only the third one is really interesting. (but does not work for me)
Here I recall the context:
I have a triple-native boot on my MacBookPro : Leopard/WinXP/Ubuntu. They work great on native boot. My concern is to make them work in VMWare, as "rawdisks".
To do that, the wmware-radiskcreator tool can be used. It creates .vmdk and -pt.vmdk files, that are upgraded to the new Fusion 2.0 format when associated to a virtual machine.
1) First problem, solved : GRUB prevents WinXP to launch
In my previous post, I could not load WinXP, because GRUB was hanging VMWare Fusion 2.0 (without any error).
I have solved that by
-restoring the MBR through Windows Install disk
-Installing grub again, but on /dev/sda3 (which is /dev/disk0s3, which is my Linux partition). Linux can still natively boot. Indeed, ReFit allows me to select the Linux partition on a native boot, which is followed by the grub menu, but only for Linux ! WinXP does not have to pass trough GRUB any more.
2) Second problem, unsolved:
In this new configuration, my triple-native-boot work, WinXP work in VMWare Fusion, but Linux does not boot in VMWare Fusion. It looks for a boot device, try to find it by DHCP, and finally fails. It is not able to find the /boot directory on the /dev/sda3 parittion.
I already tried to set the /dev/sda3 partition as active, with fdisk. It is now active, but that does not seem to help.
3)My questions :
Is there any way to tune (by hand ?) the linux vm file to help VMWare Fusion boot the Linux ?
Is there any way to edit the -pt.vmdk file to tune the partition table ?
What is the policy of VMWare developers regading GRUB ? Are there any plans for future support ?
Regards,
Pierre Chatelier
As far as I know, Apple doesn't officially support Linux with Boot Camp, so it's not officially supported by Fusion either. But since other users have gotten it to work in the past, it should be possible.
Are you trying to just boot your BootCamp VM that Fusion automatically created? That will typically only work for Windows, since those are the ones Fusion detects and uses for BootCamp. You need to set up a new VM with a custom vmdk that uses your Linux partition. This can be done with vmware-rawdiskCreator, as described in the third thread you referenced. Similar instructions can be found on various other sites if you search for "rawdiskCreator" and "Ubuntu", for example http://taylorbanks.com/blog/ubuntu-on-the-macbook-pro-physical-virtual-or-both/
Also, I'm not sure if it will be an issue or not, but when you boot natively Ubuntu is using SATA (/dev/sd), while Fusion uses virtual IDE disks (/dev/hd) for raw disk access. Though I didn't see any comments about this elsewhere, so it might work regardless.
>Are you trying to just boot your BootCamp VM that Fusion automatically created?
No, I have already used the rawdiskcreator to create the VM using my physical partitions. My concern is to boot them, which is a problem because GRUB is installed on the Linux partition.
i don't think there's anything specific to GRUB that should prevent it from booting, since it works just fine for regular VMs.
In this new configuration, my triple-native-boot work, WinXP work in VMWare Fusion, but Linux does not boot in VMWare Fusion. It looks for a boot device, try to find it by DHCP, and finally fails. It is not able to find the /boot directory on the /dev/sda3 parittion.
This might mean that the disk isn't configured as bootable in the VM's BIOS. You can access it at the beginning of the boot process if you press F2 (or ESC, then choose Setup). Make sure that the hard drive is properly visible (should typically be Primary Master in the Main category) and is set to be bootable in the Boot category.
Aside from that, I'm not sure what could be wrong... Maybe try booting with a Live CD or something similar to make sure you can actually see the Linux partition in that VM?
Hello,
Incredible ! It now works.
I did not realize that I could enter the BIOS, and I did not try that before.
I did what you do : check that the VMWare Virtual ID was recognized as Primary Master (it was), that it was bootable (it was). I just changed the boot order, without great confidence.
And it worked.
Jus to test, I restored the BIOS to its default settings (other boot order), and it keeps working.
I do not understand that, but it is enough for the current problem.
Thanks you very much,
Regards,
Pierre Chatelier
Fantastic! Please post more details. It might be helpful for everyone.
Hello,
I can't remember all the details, but here is what I have done
Triple NativeBoot *
I have made 3 partitions : Leopard, WinXP and Ubuntu (for me in /dev/disk0s3 = /dev/sda3 for linux). So far, Grub is installed with its default config from Ubuntu
I had to install ReFit to be able to select which one to boot at launch
Migrating GRUB *
With WinXP installation disk, I booted a console to restore the MBR. Thus, after refit boot, Windows did not pass through GRUB any more to boot. But Ubuntu could not boot any more.
With a Live CD, I booted an Ubuntu, mounted my disk partitions, and reinstalled grub, but directly in /dev/sda3/boot (undesrtand X/boot, where X is a mount point for /dev/sda3). See (grub-install --root-directory=X)
Now, after Refit, only Linux is passing trough GRUB
Creating virtual machines *
With vmware-rawdiskcreator, I created vmdk files for Ubuntu; and with the VMWareFusion 2.0 assistant, I created a virtual machine based on those files.
WinXP is automatically detected as BootCamp partition, nothing to do there.
Booting Ubuntu in VMWare *
The main reson for the current thread is that that point was not working.
At the UbuntuVM boot, hit F2 to enter the BIOS, play a little with boot devices, save&quit, and it should work... it did for me, even if I potentially did nothing else than entering/quitting the BIOS.
Regards,
Pierre Chateier
I have been trying to get the techniques described here and elsewhere to work for me. I feel that I am really close, but I am missing a last step.
I currently have a triple boot (BootCamp) with OS X Leopard, Debian 5.0 Linux, and Windows XP using ReFit. vmware-rawdiskCreator prints:
./vmware-rawdiskCreator print /dev/disk0
Nr Start Size Type Id Sytem
-- -
-
-
-- -
1 1 409639 BIOS EE Unknown
2 409640 406141832 BIOS AF HFS+
3 406813616 107391720 BIOS 83 Linux
4 516311040 108830720 BIOS 7 HPFS/NTFS
The Refit/triple-boot works fine, so I am now trying to run Windows and Linux through VMWare Fusion (2.0.2).
Using the rawdiskCreator, I was able to get Windows XP working fine under VMWare. But I am still having problems with Linux.
With Linux, I started by creating a "Other Linux 2.6.x kernel 64-bit" as my template. Following instructions I found here:
http://taylorbanks.com/blog/ubuntu-on-the-macbook-pro-physical-virtual-or-both,
I created the rdm files and edtied my .vmx file.
Following this thread, I booted VMWare into the bios via F2 to prevent the network boot from trying to preempt the disk.
So finally, when I try booting, I see:
Welcome to GRUB!
error: no such partition
Entering rescue mode...
grub rescue>
This is the farthest I've been able to get. Does anybody know how to get past this?
I only installed GRUB to /dev/sda3 when I went through the Linux installation. I did not install it to the MBR.
I'm speculating that maybe the device numbers or mapping is inconsistent when running through VMWare than when booting directly to Linux, but this is only a guess. But it might explain the "no such partition".
I tried removing the SCSI device created by the template (since I don't have one in real life), via both the VMWare config and directly removing it from the .vmx file. But it hasn't helped so far.
Thanks
My reply as per this thread: http://communities.vmware.com/message/1524727
First off, an extra piece of information. When you create a rawdisk your
bootsector/MBR (I'm not sure which) is duplicated in the
<diskname>-pt.vmdk file.
I jumped thru the following hoops to get my OSX/WinXP/Ubuntu setup
going in both native and vmware modes for WinXP and Ubuntu. As a note I
started with a setup where windows was booting via GRUB in MBR. My
partitions are EFI,OSX,Ubuntu,Win in that order.
1) Use windows recovery console to fix MBR, reboot through Windows and
then again to OSX
2)Create WinXP rawdisk (VMWare Bootcamp ~/Library/Application
Support/VMWare Fusion/etc/etc/etc).
3)Boot Ubuntu from Install CD, grub-install --force (hd0,3), reboot
through Ubuntu then again to OSX. This fixes native grub boot
4) Create Ubuntu rawdisk, if you boot from this you get Partition not
found error. If you run 'ls' from the rescue> prompt, a listing of
'(hd0) (fd0)' will confirm your at the same point as me.
5) Boot VMware Ubuntu from Install CD, grub-install --force (hd0),
grub-install --force (hd0,3) , reboot the VM and ensure it now works.
6) Check your native boots, if you have issues use steps 1) or 3) to fix
the respective OS.
Goodluck, but all this messing with MBR's and Bootsectors is hazardous,
make sure you backup first!
--Scott