Jump to content

Recovery Partition for AMD CPU Enoch bootloader


3 posts in this topic

Recommended Posts

Recovery partition is already created when you install OSX from scratch.

But you need to prepare the partition for AMD CPU. Mount the partition first (disk0s3 is my system,

you can see which one it is by "diskutil list" command):

 

 

sudo diskutil mount  /dev/disk0s3

 

For enoch bootoader, copy the Extra folder to /Volumes/Recovery\ HD.

 

Add the following lines to /Volumes/Recovery\ HD/Extra/org.chameleon.Boot.plist

     

 

<key>Kernel Cache</key>

<string>\com.apple.recovery.boot\prelinkedkernel</string>

<key>Kernel Flags</key>

<string>rp=file:///com.apple.recovery.boot/BaseSystem.dmg -v npci=0x3000  CsrActiveConfig=1031</string>

 

The "Kernel Flags" define the root partition to be base system image.  You need to include all the flags necessary to boot your machine.

 

Then you need to change the BaseSystem.dmg.  Copy /Volumes/Recovery\ HD/com.apple.recovery.boot/BaseSystem.dmg 

somewhere else and run the following to copy kexts necessary for your system:

 

sudo hdiutil attach -owners on BaseSystem.dmg -shadow

ls /Volumes/OS\ X\ Base\ System/System/Library/Extensions/

sudo cp /System/Library/Extensions/System.kext /Volumes/OS\ X\ Base\ System/System/Library/Extensions/

sudo cp -R /System/Library/Extensions/System.kext /Volumes/OS\ X\ Base\ System/System/Library/Extensions/

sudo cp -R /System/Library/Extensions/DummyUSBEHCIPCI.kext /Volumes/OS\ X\ Base\ System/System/Library/Extensions/

sudo cp -R /System/Library/Extensions/AHCIPortInjector.kext /Volumes/OS\ X\ Base\ System/System/Library/Extensions/

sudo cp -R /System/Library/Extensions/SmallTreeIntel825* /Volumes/OS\ X\ Base\ System/System/Library/Extensions/

 

sudo hdiutil detach /dev/disk4

 

The above kexts are used for my machine.  Yours will be different.  The next step is to create a new image by combining the shadow file to the original dmg:     

 

hdiutil convert -format UDZO -o new.dmg BaseSystem.dmg -shadow

     

Overwrite the original dmg:
 

sudo cp new.dmg /Volumes/Recovery\ HD/com.apple.recovery.boot/BaseSystem.dmg 

   

     

Copy prelinked kernel:
 

sudo cp /System/Library/PrelinkedKernels/prelinkedkernel /Volumes/Recovery\ HD/com.apple.recovery.boot/prelinkedkernel 

     

 
Done!  Now you have a recover partition to restore system from TimeMachine backup and each time you update the OX from AppStore, only need to boot to Recovery mode and copy kernel the main system.
  • Like 2
×
×
  • Create New...