Jump to content

Rebuild Prelinkedkernel in Yosemite for El Capitan


jsl
 Share

64 posts in this topic

Recommended Posts

is what you are looking for :P

No.

I am looking for kernelcache which can be booted by recent Chameleon v.2732 ~v.2749 without kernel panic as posted at #3280.

If booted by Clover I can get kernelcache by terminal command or Kext Utility 2.6.4, but it can not be booted by Chameleon without KP.

It seems no correct terminal command to get kernelcache for El Capitan DPx from Yosemite 10.10.x.

Link to comment
Share on other sites

No, 

I have personally change the Enoch source code, and I assure you that "the was kernelcache" is now in /System/Library/PrelinkedKernels/ called prelinkedkernel, and the bootloader search this path in El Capitan.

Look in /usr/standalone/bootcaches.plist in both Yosemite and El Capitan (PostBootPaths -> Kernelcache v1.3-> Path)....see differents


It seems no correct terminal command to get kernelcache for El Capitan DPx from Yosemite 10.10.x.

Can't be because "kextcache" parse the bootcaches.plist and determine all paths from there, but also check if is compatible!

 

EDIT

Also Your pict show you that last time you have rebuilt it was "Today 5,23 PM" :yes:... basically 1,5 h ego since now (base on your IP), but here in Italy we have the "summertime"..so can be also 30 minutes ago ;)  

  • Like 1
Link to comment
Share on other sites

No, 

I have personally change the Enoch source code, and I assure you that your ex-kernelcache is now in /System/Library/PrelinkedKernels/ called prelinkedkernel, and the bootloader search this path in El Capitan.

Look in /usr/standalone/bootcaches.plist in both Yosemite and El Capitan (PostBootPaths -> Kernelcache v1.3-> Path)....see differents

Can't be because "kextcache" parse the bootcaches.plist and determine all paths from there, but also check if is compatible!

 

EDIT

Also Your pict show you that last time you have rebuilt it was "Today 5,23 PM" :yes:... basically one 1,5 h ego since now (base on your IP), but here in Italy we have the "summertime"..so can be also 30 minutes ago ;)  

Thanks for your prompt reply and advice which remind me of very important difference between Yosemite and El Capitan.

If I edited /usr/standalone/bootcaches.plist to change from /S/L/PrelinkedKernels/prelinkedkernel to /S/L/Caches/c.a.k.c/Startup/kernelcache

will it be possible to rebuild system caches for El Capitan in Yosemite ?

Link to comment
Share on other sites

Yes, you can try to rebuild it, but you don't touch the bootcaches.plist!

 

@jsl

sudo rm -f /Volumes/Boot_10.11DP6/System/Library/PrelinkedKernels/prelinkedkernel
sudo kextcache -u /Volumes/Volumes/Boot_10.11DP6

this work from yosemite ;) 

Edited by Micky1979
Link to comment
Share on other sites

No.

I am looking for kernelcache which can be booted by recent Chameleon v.2732 ~v.2749 without kernel panic as posted at #3280.

If booted by Clover I can get kernelcache by terminal command or Kext Utility 2.6.4, but it can not be booted by Chameleon without KP.

It seems no correct terminal command to get kernelcache for El Capitan DPx from Yosemite 10.10.x.

 

If you booted by Clover and get prelinkedkernel by Kext Utility 2.6.4, Chameleon 2732 should work fine as my test.

 

I think, you need to check /Extra/org.chameleon.Boot.plist and /Library/Preferences/SystemConfiguration/com.apple.Boot.plist again.

Somewhere, -f, need to be removed. :yes:

 

May i ask,

did you boot to El Capitan with Clover, and work fine?

did you rebuild prelinkedkernel under El Capitan with Clover and Kext Utility 2.6.4?

Not under yosemite.

Link to comment
Share on other sites

If you booted by Clover and get prelinkedkernel by Kext Utility 2.6.4, Chameleon 2732 should work fine as my test.

 

I think, you need to check /Extra/org.chameleon.Boot.plist and /Library/Preferences/SystemConfiguration/com.apple.Boot.plist again.

Somewhere, -f, need to be removed. :yes:

 

May i ask,

did you boot to El Capitan with Clover, and work fine?

did you rebuild prelinkedkernel under El Capitan with Clover and Kext Utility 2.6.4?

Not under yosemite.

I have double check /Extra/org.chameleon.Boot.plist and /Library/Preferences/SystemConfiguration/com.apple.Boot.plist

there is no -f there. Just kext-dev-mode=1 -v in /Extra/org.chameleon.Boot.plist and rootless=0 -v in /Library/Preferences/SystemConfiguration/com.apple.Boot.plist

My El Capitan DP4 ~ DP6 can be booted by Clover and worked fine.

I have rebuild prelinkedkernel under El Capitan with Clover and Kext Utility 2.6.4

Do you mean you can boot by Chameleon 2732 and work fine for DP4~DP6 ?

Yes, you can try to rebuild it, but you don't touch the bootcaches.plist!

 

@jsl

sudo rm -f /Volumes/Boot_10.11DP6/System/Library/PrelinkedKernels/prelinkedkernel
sudo kextcache -u /Volumes/Volumes/Boot_10.11DP6

this work from yosemite ;) 

Do you mean there is no need to change Preferred Compression from lzvn to lzss in bootcaches.plist ?

Link to comment
Share on other sites

Do you mean you can boot by Chameleon 2732 and work fine for DP4~DP6 ?

 

Yes, work fine here with 2748 + DB6 15A244d

post-61100-0-98014900-1438780968_thumb.gif.

 

 

Do you mean there is no need to change Preferred Compression from lzvn to lzss in bootcaches.plist ?

Could be the problem..... don't need to change lzvn to lzss....

  • Like 1
Link to comment
Share on other sites

Lots of reasons to KP. Suggest remove all unsigned kexts except FakeSMC.kext.  Repair permissions and rebuild cache from Yosemite.

I have removed all unsigned kexts except FakeSMC.kext and repaired permission & rebuild cache from Yosemite.

But reboot by Chameleon still got the same Kernel Panic as before which is due to unable to load kernel by AppleACPIPlateform.kext (post at #3280). Should I try patched kernel or AppleACPIPlateform.kext ?

Yes, you can try to rebuild it, but you don't touch the bootcaches.plist!

 

@jsl

sudo rm -f /Volumes/Boot_10.11DP6/System/Library/PrelinkedKernels/prelinkedkernel
sudo kextcache -u /Volumes/Volumes/Boot_10.11DP6

this work from yosemite ;) 

I have tried these two in Yosemite and got a new prelinkedkernel:

sudo rm -f /Volumes/Boot_10.11DP6/System/Library/PrelinkedKernels/prelinkedkernel

sudo kextcache -u /Volumes/Boot_10.11DP6

However this new prelinkedkernel still can not be booted by Chameleon without KP again as before.

That means either FakeSMC.kext not loaded or need patch for kernel or AppleACPIPlateform.kext for my CPU.

Link to comment
Share on other sites

I have tried these two in Yosemite and got a new prelinkedkernel:

sudo rm -f /Volumes/Boot_10.11DP6/System/Library/PrelinkedKernels/prelinkedkernel

sudo kextcache -u /Volumes/Boot_10.11DP6

However this new prelinkedkernel still can not be booted by Chameleon without KP again as before.

That means either FakeSMC.kext not loaded or need patch for kernel or AppleACPIPlateform.kext for my CPU.

I test it too.

Boot to Yosemite by Clover 2353.

sudo rm -f /Volumes/Boot_10.11DP6/System/Library/PrelinkedKernels/prelinkedkernel
remove some kexts in SLE or LE, to make sure get different prelinkedkernel.
sudo kextcache -u /Volumes/Boot_10.11DP6

and....

2731, 2732 boot fine with new prelinkedkernel.

2737, 2748 did work with new prelinkedkernel, and get KP as yours.

 

So, try 2731, 2732, it should work like mine.

Link to comment
Share on other sites

I test it too.

Boot to Yosemite by Clover 2353.

sudo rm -f /Volumes/Boot_10.11DP6/System/Library/PrelinkedKernels/prelinkedkernel
remove some kexts in SLE or LE, to make sure get different prelinkedkernel.
sudo kextcache -u /Volumes/Boot_10.11DP6

and....

2731, 2732 boot fine with new prelinkedkernel.

2737, 2748 did work with new prelinkedkernel, and get KP as yours.

 

So, try 2731, 2732, it should work like mine.

Do I need to delete kernelcache at first to test this new prelinkedkernel ?

Which version of FakeSMC.kext working for you now ? 6.0 or 6.1 ?

Link to comment
Share on other sites

Do I need to delete kernelcache at first to test this new prelinkedkernel ?

Which version of FakeSMC.kext working for you now ? 6.0 or 6.1 ?

I have deleted kernelcache, and used 6.16.1372 FakeSMC.

But FakeSMC will not cause KP as #3280.

Link to comment
Share on other sites

I have deleted kernelcache, and used 6.16.1372 FakeSMC.

But FakeSMC will not cause KP as #3280.

I have deleted kernelcache too before testing.

My FakeSMC.kext is 6.0.

Unfortunately Chameleon v. 2732 got the same boot error as v.2737, v.2748, or v.2749 (testing) in my Asus Z58, Z77, Z87, & Z97 MBs.

Currently I have to use Clover 3253 to boot 10.11DP4~DP6 without such an error.

Thanks for so many friends here providing advice for me !

 

Retested by FakeSMC.kext 6.18 got the same error.

  • Like 1
Link to comment
Share on other sites

I have deleted kernelcache too before testing.

My FakeSMC.kext is 6.0.

Unfortunately Chameleon v. 2732 got the same boot error as v.2737, v.2748, or v.2749 (testing) in my Asus Z58, Z77, Z87, & Z97 MBs.

Currently I have to use Clover 3253 to boot 10.11DP4~DP6 without such an error.

Thanks for so many friends here providing advice for me !

 

Retested by FakeSMC.kext 6.18 got the same error.

I think, you might set UseKernelCache=No, you need to remove it for all partitions of your /Extra/org.chameleon.Boot.plist.


	<key>UseKernelCache</key>
	<string>No</string>

It works like -f, even 2732 didn't work too, as i test it and get KP as yours.

Link to comment
Share on other sites

ok i had the exact same problem that jsl is having right now the same kernel or prelink kernel error message.I was using enoch 2737 so i want to tell you how i fixed.

I follow the example by toleda but i had to change the first line of code because the space in the name El Capitan, so assuming you named your drive El Capitan this is done from Yosemite terminal:

 

 

cd /Volumes/El\ Capitan

sudo kextcache -system-prelinked-kernel

sudo kextcache -system-caches
 

 

ok i installed enoch 2732 over 2737 that was installed in El Capitan hard drive, reboot and it works, make sure you boot with -v.i'm back in business and my version of fakesmc is v6.16.1372.

 

if the first line of code don't work for you simply drag the hard drive icon into yosemite terminal and press enter. Follow by copying the next lines 1 by 1 follow by enter.

 

so i can confirm the fix works thanks to everybody for the info.

 

I tried to upload my copy of fakesmc but it seems that i'm not allowed

 

just try to get that same version

 

good luck

 

Thanks for your help and advice.

However even cd /Volumes/El_Capitan executing the following commands still in vain

sudo kextcache -system-prelinked-kernel

sudo kextcache -system-caches

Because it only change in /Volumes/Yosemite where I execute commands without change in /Volumes/El_Capitan.

I don't know why it does not work in my Hackintosh.

At present I have to use Clover for booting DP4 to DP6.

  • Like 1
Link to comment
Share on other sites

for you to use this line:

cd / Volumes/El\ Capitan

your hard drive name or volume has to have the exact same name El Capitan matching capital letters and everything it can not be el capitan look the difference between

cd / Volumes/El\ Capitan

and

cd /Volumes/El_Capitan

go to finder - preferences - and click show hard disk, then drag the hard drive icon El Capitan from your desktop into Yosemite terminal.

Then that first line of code will be automatically created, it will look like this

/Volumes/El\ Capitan

press enter, now all you have to do is copy and paste the other 2 lines one at a time. when you paste the second line and press enter

 

do you get a screen showing invalid signature message?

 

i think your problem is because you already made modifications to the system and that's why it doesn't work or simply a path problem that's why i think is better just to drag the hard drive icon into terminal to avoid a bad path, but if you enter the second line and hit enter and nothing happen then there is definitely something wrong.

i had the exact same error you were getting, if you ever make a clean install again try this first and you see that it will work

 

good luck

 

Thanks again !

The hard drive name is correct.

I got a screen showing invalid signature message when I enter the first line of command (sudo kextcache -system-prelinked-kernel) instead of the second line (sudo kextcache -system-caches) as you mentioned here.

Maybe I should try a clean install again.

Edited by jsl
Link to comment
Share on other sites

1st line = cd /Volumes/El\ Capitan

 

2nd line = sudo kextcache -system-prelinked-kernel

 

3rd line = sudo kextcache -system-caches

 

i think that's the best thing to do simply reinstall "clean install" and try it from the beginning, but if you see the invalid signature message that's means that you are doing the steps correctly and the path is correct i should work after that.

did you you tried booting with enoch 2732 after doing this? maybe is already fixed and working and you don't even know because you haven't tried booting yet.

if it doesn't work now is simply because some of the steps that you previously made about the prelink kernel you changed , deleted , modified something etc etc etc and that's why it doesn't work now a clean install will save the day, no doubt

 

good luck

 

i know you will eventually fix it

you got the tools the will and the knowledge

After strugging for several days eventually El Capitan DP5 can be booted by Chameleon v.2732 now.

The key point is need clean install of DP5 in GPID partition.

After first boot unable to completing setup because lack of FakeSMC.kext.

Need boot to 10.10.5 or 10.11DP3 to use Kext Wizard at first.

Then boot to DP5 with -s

Need rebuild caches in DP5 single user mode by

sudo kextcache -system-prelinked-kernel

sudo kextcache -system-caches

After that rebooting is fine

Thanks a lot for repeated advice and help from so many friends here !

But still lack of cross partition kextcache function from Yosemite to El Capitan now.

 

My mistake: it's PB1(15A215h) clean installed instead of DP5.

Link to comment
Share on other sites

yes good news indeed. well in my case i installed public beta 1 using enoch 2737 then updated to public beta 2 from the app store only after updating to public beta 2 that's when i needed to change the bootloader to 2732,and from there on i have to do prelinked kernel fix from terminal

including public beta 3 and public beta 4 after every update i have to apply the prelinked kernel fix from terminal using Yosemite.

right now i'm running public beta 4 and i'm using guid partition

 

thanks jsl for the info i have to try that booting with -s and running line 2 and 3,so i don't need to boot into Yosemite. i can just fix it from there and continue to load El Capitan

Unfortunately after update to PB2 Chameleon v.2732 got the same booting KP as before.

Even boot with -s failed too.

So I must figure out why others can rebuild system caches from Yosemite for El Capitan.

Before it's solved the only way for me to boot is using Clover v.3253.

I am curious to know :

1. Do you have just one hard disk using GPID partitions for Yosemite and El Capitan only ?

2. Is Yosemite partition with Chameleon bootloader in the first partition ?

Because I have multiple hard disks with both MBR and GPID partitions to different HD,

and Yosemite partition is NOT the first partition.

Chameleon bootloader is located at El Capitan partition at present.

Maybe I should change it as Yosemite partition as the booting and the first partition to make it as simple as possible and hope it can work as the others who advised here.

Link to comment
Share on other sites

Unfortunately after update to PB2 Chameleon v.2732 got the same booting KP as before.

 

All you need to do is remove -f and UseKernelCache=No FROM all of your partitions of /Extra/org.chameleon.Boot.plist.

Because you didn't know which partition is active in your HDD.

 

remove it or set to UseKernelCache=Yes

<key>UseKernelCache</key>

    <string>No</string>

Link to comment
Share on other sites

All you need to do is remove -f and UseKernelCache=No FROM all of your partitions of /Extra/org.chameleon.Boot.plist.

Because you didn't know which partition is active in your HDD.

 

remove it or set to UseKernelCache=Yes

<key>UseKernelCache</key>

    <string>No</string>

I have double check all partitions in my system.

There is No "-f" in /Extra/org.chameleon.Boot.plist or /Library/Preferneces/SystemConfigurations/com.apple.Boot.plist

UseKernelCache are all =Yes in /Extra/org.chameleon.Boot.plist.

So there is other reason which I need to find as soon as possible.

Otherwise I must use Clover booting at present.

  • Like 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...