>> Thanks again, partial success so far: could get refit working but >> apparently refit does not boot dfly, or at least not yet. >> >> I made two partitions for dfly as described in the README on the live >> cd, a ufs partition for /boot and hammer partition for the rest. refit >> recognizes the boot partition as a FreeBSD one and when I choose to >> boot it in the refit many then I get a blank screen and then "No >> bootable device -- insert boot disk and press any key". Then the >> computer hangs. > > 2 GPT partitions or 2 slices in the dragonfly partition? > >> I thought it might be since refit isn't familiar with 64bit disklablel >> but using disklabel32 gives the same result. >> >> I tried to gptsync the partition tables but refit refuses; refit sees >> dfly partitions as "Unknown" and refuses to do anything with them. I >> thought there might be a way to force gptsync but refit shell hasn't >> got gptsync. > > Did you use a GPT aware partitioning tool? > (g)parted or cgdisk on Linux livecds (sysresccd etc.) or Apple's Disk Util.
2 GPT partitions as described in "Boot setup" http://leaf.dragonflybsd.org/cgi/web-man?command=gpt§ion=8 However, this might be outdated. As far as I understand, gpt was ported from freebsd; freebsd has moved on to gpart now. refit gptsync complained about gpt partitions. When I installed freebsd and used gpart, then refit was satsified. I tried installing freebsd on an external usb stick. And succeeded: so this is the first time I've succeeded in getting a BSD running on this 13" MBPro! Booting sequence is then: MacEFI --> refit --> fbsd It turns out fbsd has two exclusive types of partioning schemes. The old one, bsd slices; and gpt. They are exclusive: you can't disklabel gpt slices. And you should created one gpt slice for each partition you want, so eg /dev/ada0p1 /boot /dev/ada0p2 swap /dev/ada0p3 / and so on, as many as you like. dfly man 8 gpt is not quite consistent with this. dfly disklabels a gpt slice. Fbsd gpt booting scheme involves a small 64k partition that consists of a loader, /boot/gptboot, see http://www.freebsd.org/cgi/man.cgi?query=gpart&apropos=0&sektion=0&manpath=FreeBSD+9.0-RELEASE&arch=default&format=html However, success did not last long; at the next boot I got "Missing operating system" -- a different error message from the last time. I did not touch any freebsd partitions, and have no clue what happened. I never regained booting to that system. Installed fbsd on the harddisk and could gptsync and everything. But refit boot leads to "Missing operating system". > >> I wonder if there's a way to make refit recognize how to boot from the > > I've never booted a BSD via rEFIt. Is it possible you need to have a > 1MB BIOS BOOT partition as the 3rd partition? > >> dfly ufs partition? I was browsing around to find if grub2 might work >> but haven't found the right .efi image yet. > > The following is what "should" work, but I didn't try it out for BSDs. > > You could of course install a grub.efi image inside the HFS+ partition > and then provide a grub.cfg with the chainloader config or kernel > loader config based on one of the myriads of grub2 plugins for > booting dragonfly. > Creating a grub2.efi image file is not hard. Get a livecd with > grub2-efi-32 and then use usegrub-mkimage to create an efi image > file by selection all plugins/modules you want and the output filename. > Once you have that, write or generate a grub.cfg and put it in the > same directory. > Next bless the grub efi image instead of refit.efi in the OSX installer's > terminal. > > If you have an Nvidia or ATI video adapter you might have to load one > of the video bios grub plugins or just boot with rEFIt to avoid such issues. I will try grub32 next. Another thought: if dfly could port /boot/gptboot from fbsd and set up similar booting scheme, then efi booting might be solved? Peeter --