Jump to content

[Guide] Boot from EFI partition, zero modification installs on Intel SSE2 or better...


munky
 Share

1,404 posts in this topic

Recommended Posts

Guys - I've finally tested my Munky bootloader install shellscript after 3 installs, and it appear to be working. ;) It saves a lot of time...

 

All you have to do is run the script, choose your partition, and it does all the installation for you automatically...

 

Would it be better to post it in this thread or in a new thread?

 

EDIT: I'll post it here anyway... Munky, if you want to add this script to the original post in this thread, or move it somewhere else, feel free. ;)

 

Instructions:

=========

 

This script has only been tested by me, so if it goes wrong don't be surprised! Don't hold me responsible if your computer turns into the Terminator and starts going crazy, back everything up, you know the score. :(

 

This should only be used after installing OSX from the retail DVD.

 

I made it to be run from Terminal immediately after OSX installer - without rebooting! Don't run it from a live system, It doesn't unmount properly, and I haven't tested it at all on a live system, only after booting the OSX retail DVD.

 

Ok, here's how to use it.

 

1) Unzip "poscripts.zip" to it's own folder.

 

This contains the latest Munky boot loader (v6.1), the script and supporting commands.

 

My extensions folder and DSDT file is in there also, along with my com.apple.Boot.plist file. I left them in so you know where the files should be... it's basically my working directory in ZIP form. :P

 

2) Delete my extensions and DSDT files, and replace them with your own... If you don't want to use the DSDT or com.apple.Boot.plist files, just leave them out.

 

This is probably the most important part, if you get this wrong it probably won't boot when you boot from your EFI partition.

 

3) Once you have the folder ready, copy it onto a USB stick, or even better, a boot-132 USB stick (see the stickpin thread). Basically you need this folder accessible to OSX after running the installer.

 

4) Load boot-132 then boot the retail DVD.

 

5) Partition and install OSX - write down your partition name and try and use a normal name without spaces and crazy chars as my partition selection part of the script is pretty crude.... I just called the partition "osx".

 

6) Once OSX is installed, DON'T RESTART!

 

6) Go to the utils menu up the top, and fire up terminal...

 

7) find your "poscripts" directory - my USB stick is called "sticky", so to go into it I type "cd /Volumes/sticky/poscripts/"

 

8) type "ls" to check the files are there

 

9) type "./osx_postinstall.sh" - no need for sudo as you'll already be root user as you'll be using the retail DVD.

 

10) follow the instructions, you can also disable spotlight at this stage if you want

 

Don't panic over error messages too much, a lot of them don't matter... This is a pretty messy script :o

 

11) Reboot, use your boot-132 cd/usb drive to boot your new install. Apply the latest combo update (10.5.6)

 

12) Once this is done, reboot and boot from your EFI partition, and cross your fingers! Don't worry it it restarts twice, even real macs do this after a combo update....

 

Also, don't forget to use the "-v -f" flags if you run into trouble...

 

More detailed instructions are in the script...

 

Please let me know if this script doesn't work, or even if it does, as I've only tested this on 3 installs!

 

Finally - Ignore all my silly instructions in the script, I didn't actually intend to release this. ;)

 

It's 2am now in the UK, so I won't be able to post again until tomorrow... I hope you fond this helpful, it saves a LOT of typing. :P

poscripts.zip

Link to comment
Share on other sites

yes this bootloader will boot to any partition on yr system, i have no idea if there are limitations using it to boot vista, but i don't see any reason why it would be a problem

 

When the bootloader comes up, I can only see my mac partition by default, the vista partition isn't visible for me to choose it. If I press Esc and go in the screen that chooses which device to boot, obviously I can only boot from 80 because I have only one harddrive. Unless I can specify which partition to boot from there? I just thought I can only use 80, 81, 82 to boot 1st, 2nd harddrive and optical drive...Do you understand the problem that I am having? When I choose 80 it only shows the mac partition.

 

Thanks!

Link to comment
Share on other sites

@joe11 i understand yr problem, but i have no idea why it does that, I can see my XP disk fine... with all partitions I can even see partitions with no OS on them.

 

as I said I'm a newb, but maybe someone here knows if vista needs special treatment, although i suspect the correct thread to enquire would be the chameleon thread about the bootloader that munkys one is based on....

 

-----------------------------------

 

the difference between my 10.5.1 install that boots using this method, and my 10.5.5 (combo updated from the same install) seems to be an error message to do with mDNS responder just before it hangs

 

did this change in 10.5.5 and can anyone point me to what needs to be changed on my EFI partition to accommodate it?

 

Whilst I agree that munkys method is absolutely the way forward for hackintosh, I now see that we will never be sure of trouble free updates, since apple could anytime include something that requires us to hack it, the advantage of the EFI partition method being that our previous hacks will not be overwritten, there always the potential to need new ones.

 

For any other newbs out there, the other thing i didn't realise when i started is that the EFI partition will never be visible in the finder, you have to do all yr adding and removing kexts in terminal, which a find a bit tiresome

 

 

IS there a way to mount it in the finder and just drop the kexts in? would speed up my fixup process no end, and munky's script would take care of the perms...

Link to comment
Share on other sites

thx for this great tutorial!

There is just one thing, that is not totally clear for me.

This method uses the GUID partitioning system to get this small hidden partition for the EFI files. This means that this method will not work when choosing MBR instead of GUID.

But MBR makes multiboot a lot easier. So how is it possible, to realize multiboot (xp and leopard) with a GUID formatted hdd?

I know that i can use the darwin bootloader with "81" and "82" to boot different hdds, but that seems quite uncomfortable.

 

thx in advance

Link to comment
Share on other sites

I have a problem, I'm also using Munky's nice Boot EFI.

Hey i even managed to install the Retail Copy Of Leopard of the same hard disk. But what i can't i have inserted all my kexts for the ASUS F3E i have and ethernet is not working and sound everything else works.

 

Now i have checked the update.log and i see

 

is missing dependencies (including in cache anyway; dependencies may be available from elsewhere) i have attached the log. I'm trying to get my hack working straight from each install i do. Please Help!!!

 

 

I have EFI strings for sound ethernet and x3100 which i used on ideneb and they work!

update.txt

Link to comment
Share on other sites

For any other newbs out there, the other thing i didn't realise when i started is that the EFI partition will never be visible in the finder, you have to do all yr adding and removing kexts in terminal, which a find a bit tiresome

 

IS there a way to mount it in the finder and just drop the kexts in? would speed up my fixup process no end, and munky's script would take care of the perms...

 

try-

# killall Finder

 

Thanks for your help. Do you know if i download the chameleon version from their website and install it, maybe that would fix it? or cause even more problems?

 

joe611, my understanding is that when dealing with dual-boot GUID is doable. I did a bit of research on this a few weeks back and from what I remember... With each OS on its own disk it's easier than to use a single disk (as noted above, though it's not terribly graceful,) but I believe the latter is doable as well. I think there's a distinction between the 32 & 64 bit versions of XP & Vista, i.e., the 64 bit versions support GUID, the 32 bit versions do not. I think your best bet is to check the forum specific to Booting here, or google around till you find someone who has accomplished exactly what you are after configuration-wise. May want to include "EasyBCD" in your search criteria.

Link to comment
Share on other sites

well, I have tried various different combinations of kexts, some work with 10.5.1 and some don't but none will boot 10.5.5 except in safe mode.

 

I can't find anywhere a list of known working kexts to boot P5W with 10.5.5, the one such list i did find i think pertained to an earlier version, and didn't work for me

 

the frustrating thing is that I have a fully working kalyway 10.5.5 install, but i can't work out what to take from it and put on my EFI partition to make it work using this method.

 

when I added my com.apple.boot.plist from my kalyway install it stopped my new install booting even in 10.5.1, presumably it needed some other stuff too...

even a boot132 set of kexts that works for 10.5.5 would be progress....

 

is there a process for determining what should be on the EFI partition? can someone point me to it? I'm totally lost at this point, all munky's stuff seems to work, but i just don't know how to find out what kexts to give it.

 

and I'm completely stumped by what the difference might be between 10.5.1 and 10.5.5

 

when i updated to 10.5.5 with kalyway all i had to do was remove appleintelpowermanagement... and my IntelCPUPMDisabler.kext loaded from my EFI partition is loading... so it probably isnt that...

 

seems like only a few should be needed to make it boot, even if other functions don't work..

Link to comment
Share on other sites

In trying to find a set of kexts that work, I am unpacking some boot 132 disks that are supposed to be for the P5W mbo

 

is this a credible way to find stuff that works?

 

is there any difference between the kexts required for a boot 132 disk and the kexts required for booting from EFI partition?

 

no luck so far. they boot the 10.5.1 but not the 10.5.5 i really wonder if there is something wrong with the 10.5.5 and I'm wasting my time.

 

do I need to add my dsmos.kext? why is this not included in the boot132 disks, it was in some simpler ones i found...

Link to comment
Share on other sites

Did you edit the version of you extrakexts? Because if they are lower then the acutual ones on your HD (possible since there were 4 Updates in between) they won't load and therefore do nothing :)

 

Of course you have to add dsmos.kext, it's the only thing that is REALLY important^^

 

To your other question, no 132 and EFI need the same kexts.

Link to comment
Share on other sites

thanks Aranius, that confirms what I thought.

 

I have mostly been using dsmos, and yes i get loads of errors without it, the 10.1 vanilla still boots though.

 

I have tried various combinations of kexts all with versions tweaked to 9.9.9 - that in itself throws some errors as things complain that was not the requested version... dunno if thats a problem, its doesn't seem to be THE problem.

 

there are endless more combinations I could try, but I think I'm missing something basic here, and I'd like to experiment based on some actual conceptual framework!

 

where can i read up on dsmos and any pitfalls? will any old dsmos do? I'm using the one from my working kalyway install - does it have to be rebuilt in some way? since its left out of most of the boot 132 discs I guess it has to be individualised in some way...

Link to comment
Share on other sites

IT WORKS

 

but i don't understand....

 

I updated my 10.5.1 step by step, after the 10.5.4 to 10.5.5 update it would only boot in safe mode.

 

I booted in safe mode and applied the 10.5.6 update, and now it boots in normal mode... with some gfx problems... but it boots.

 

now to try to sort out my gfx card support.... can i just copy my boot.plist from my working system, or do i need to recreate it in the new system? EDIT, copied it from my working system and got resolutions and dual displays anyway....

Link to comment
Share on other sites

@therhymer, (I had this written prior to your most recent reply, but real work got in the way.... I'm sending it anyway damnit :) ) .......... I share your frustration. I keep telling myself that if I'm not enjoying the *hack* aspect of hackintosh to just go buy a MacBook Pro and be done with it.

 

Just some random thoughts, hopefully something will help. Again, keep the 'grain' thing in mind. :rolleyes:

 

I'd start from scratch, on a clean disk, devoted to the system. From what I gather it seems something is really wrong with your 10.5.5 install.

 

Alternatively, you could list the extensions for both of your installs and compare them. The 'code' I posted yesterday redirects output using '>' and then compares the resulting text files using the diff command. This will show the differences with regard to Extensions on each of the installs, and the sum total should be reasonably close. This will not compare based on version info and such, just simply based on the name of the extensions.

 

With a basic installation of 10.5.5 it shouldn't require more than a few kexts to boot, and a few more (or associated EFI strings,) to run well. Sorry I can't be more specific here, I'm still figuring it all out myself. But I do know that if they don't load from EFI, simply copy them to /S/L/E and the should load from there. Be sure to make backups of the originals.

 

Be sure to get the permissions right whenever messing with system files including kexts. Verfiy/correct them whenever you change anything. Disk Utility works for this, there's a command-line version as well.

 

Clear caches and boot with '-f' at least the first subsequent boot after any changes.

 

This will clear the caches, from what I understand:

# rm -rf /System/Library/Extensions.mkext

# rm -rf /System/Library/Extensions/Caches/

# rm -rf /System/Library/Caches/

 

How well supported is your board? Best bet is to just duplicate off of those that came before you, and then learn what you can about the newer offerings and revisit those threads to share. The only 'real' documentation I've found for a package of kexts is that one produced by kamikaze for the Wind. See attached, some good clues in there (I just discovered it yesterday, myself.)

 

Keep in mind this ReadMe is for a package designed♦ for the Wind netbook, taken from this post:

http://forum.insanelymac.com/index.php?s=&...st&p=942293

 

If you take what I wrote above about kexts and consider them 'System' and 'Extras', here's how I *think* it breaks down on my two systems.

 

Wind - System:

AppleDecrypt.kext

AppleSMBIOSEFI.kext

Disabler.kext

 

Wind - Extras:

AppleACPIBatteryManager.kext

AppleACPIPS2Nub.kext

AppleAzaliaAudio.kext

ApplePS2Controller.kext

ClamshellDisplay.kext

IONetworkingFamily.kext

LaptopDisplay.kext

AppleIntelGMA950.kext

AppleIntelIntegratedFramebuffer.kext

 

DFI LP JR - System:

dsmos.kext

IntelCPUPMDisabler.kext

SMBIOSEnabler.kext

SMBIOSResolver.kext

 

DFI LP JR - Extras:

LegacyIOAHCIBlockStorage.kext

LegacyAppleAHCIPort.kext

ACPIPS2Nub.kext

 

Also, I find using Firefox and the Session-Manager add-on helpful in trying to sort this type of problem out. I have a dedicated instance of Firefox with umpteen tabs devoted to hackintosh'in.

ReadMe.rtf

Link to comment
Share on other sites

wow thanks bing, great post.

 

I now have 10.5.6 working fully (subject to more testing) except for onboard firewire. (PCI card FW is fine) My existing gfx EFI string worked from the EFI partition first time....

 

I don't think I was doing anything wrong with the EFI partition the last 2 days, but somehow 10.5.5 was causing a problem. All other versions were working fine.

 

I've learned way more than I would have if it had worked first time! It's a great relief that its now working, thanks for the help everyone!

 

I just wish I knew what actually happened!

Link to comment
Share on other sites

OK, new question.

 

Munky's bootloader will boot any of my partitions on any disk ok. I think. But - it only applies the patches if I boot to a partition on the same disk, if i boot to a partition (such as my old kalyway install) on another disk it does not apply the patches.

 

In some situations that could be good, but in others I might want to have different vanilla installs on different disks booted from the same EFI parrtition.

 

How is this controlled? would I have to install the whole EFI bootloader setup on the other disk too?

 

Is there a way to turn the EFI patching on and off for any given disk or partition?

Link to comment
Share on other sites

For any other newbs out there, the other thing i didn't realise when i started is that the EFI partition will never be visible in the finder, you have to do all yr adding and removing kexts in terminal, which a find a bit tiresome

 

 

IS there a way to mount it in the finder and just drop the kexts in? would speed up my fixup process no end, and munky's script would take care of the perms...

 

I use:

 

mkdir /Volumes/EFI

mount_hfs /dev/diskXs1 /Volumes/EFI

 

Then go to Finder and select /Volumes and the EFI directory should pop up.

 

Don't forget to unmount once done.

Link to comment
Share on other sites

Why the bootloader doesn't see my Vista partition.

When this Vista Partition is active it works but mac os not.

when the efi partition is active mac os works but vista not.

I had try to add the boot0,boot1h or boot-turbo-munky.bin to my vista loader,

but boot0 shows me the vista loader agian , boot1h writes error on the screen

and boot-turbo-munky.bin does nothing

 

WHAT SHOULD I DO??? ;)

 

(sorry for my bad English)

Link to comment
Share on other sites

Hi,

works ok now on my machine, but i thougt the idea is to place all the extra kext to the efi partition.

If i do not put nvinject my audiodrivers and others to system/libary/extensions they are not loaded.

I also had to put the same kernel of the efi partition to my root?

is there something wrong or why are some of the kext ignored on the efi partition?

can anyone explain if i missed something?

p

Link to comment
Share on other sites

@ peppi

 

you need to change the version numbers of the kexts on yr EFI partition to be higher than the version numbers on system/library/extensions, otherwise they will not override

 

you do this by opening the kext (rightclick - show package contents) and editing the plist file.

 

you may be able to use a EFI string for you video card instead of NVinject, i believe that it is considered better to use a EFI string.

Link to comment
Share on other sites

 Share

×
×
  • Create New...