Hackintoshes x System Caches

SafeBoot

Some users wrongly think that only by rebuilding kernelcache will assure no issues after edit/install some kexts or change some system settings…

This may lead lots of users to situations where apparently all was tried, but actually no, making them believe the only solution will be reinstall the whole system again to fix the issue…

There are cases the best solution will be reinstall the OS, but, for 90% of cases, by simply clearing the system caches, will make all be back to normal again…

The Dynamic Linker (AKA Dynamic Loader or dyld at OS X) is present in every OS, and is responsible to link every kernel task to its dependencies…
On OS X’s case, it is only rebuilt by an Apple’s installer or Software Update, so, this means if you don’t manually update dyld, your system will still with outdated caches…

The simplest way to make this if you don’t want to mess with command line, is to boot in SafeBoot by using the -x flag that is universal and works with every Hackintosh bootloader
By booting into SafeBoot all caches will be deleted, and at your next “normal” boot they’ll be rebuilt…

If you don’t want to waste time by, changing whatever you want, rebooting, booting in SafeBoot, rebooting and booting again, you only have to run the commands below at Terminal.app

First, repair permissions of your root (or target) volume…

# sudo diskutil repairPermissions /

And update dyld…

# sudo update_dyld_shared_cache -force

Then, if you need also to rebuild your kext caches…

# sudo kextache -system-prelinked-kernel -all-loaded

Reboot and check if everything is OK…

Keep in mind, as I already told, that still are 10% of chance of this don’t work due to inexplicable (?) reasons…

Also, there are cases where manually rebuild dlyd Shared Cache will not have any effect, for example, if you change your SMBIOS definitions… For this cases, you will have to always use SafeBoot…

You have also the option to boot the system using the Ignoring Caches option (Chameleon = -f | Clover = NoCaches), but only SafeBoot will assure “not contaminated” caches…

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s