Contribute
Register

Recovery HD partition with El Capitan

Joined
Sep 12, 2016
Messages
71
Motherboard
Gigabyte GA-Z170X-UD5 TH
CPU
Intel i7 6700 non-K
Graphics
2048MB Asus GeForce GTX 960 STRIX OC Edition
Mac
  1. iMac
  2. MacBook Air
  3. MacBook Pro
  4. Mac mini
Mobile Phone
  1. iOS
Very, very good! Wish I had found it earlier... however, now I have the file prelinkedkernel in the trash and it can't be deleted. It's sometimes gone after reboots...
 
Last edited:
Joined
Jul 17, 2015
Messages
50
Motherboard
P6T Deluxe V2
CPU
Core i7 920 @3,6GHz
Graphics
Palit GeForce GTX 980 Ti Jetstream
Mobile Phone
  1. iOS
Thx

Is perfectly working :)
 
Joined
Jun 28, 2016
Messages
75
Motherboard
Gigabyte GA-Z470 Vision G
CPU
I9-10850k
Graphics
RX 5700 XT
Mac
  1. MacBook Air
  2. MacBook Pro
Classic Mac
  1. Apple
  2. iMac
  3. LC
  4. Performa
  5. Power Mac
Mobile Phone
  1. iOS
1- " diskutil list "
* you will get de partition list, note that the Recovery Partition is obviously named " Recovery HD "...
* check the number of the partition it is in, in this case, 3:, so, you will have disk0s3 as mount device...
---

/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *240.1 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_HFS El Capitan 239.2 GB disk0s2
3: Apple_Boot Recovery HD 650.0 MB disk0s3

---

2- create a folder in Volumes folder for Recovery HD and mount it there...
" sudo mkdir /Volumes/Recovery\ HD/ "
" sudo mount -t hfs /dev/disk0s3 /Volumes/Recovery\ HD/ "

3- enter the directory and remove the " prelinkedkernel "

" cd /Volumes/Recovery\ HD/com.apple.recovery.boot/ "
" sudo rm -rf prelinkedkernel "

4- now, copy your working prelinkedkernel there...

" sudo cp /System/Library/PrelinkedKernels/prelinkedkernel /Volumes/Recovery\ HD/com.apple.recovery.boot/ "
and just in case...
" sudo touch prelinkedkernel "

5- reboot and test it... (takes some time to load even in real macs)

Did this as stated (Sierra OS 10.12.1), rebooted, select recovery in clover (latest version), installer starts and hangs with beachball of doom.

EDIT: So I have switched out a WIFI/Bluetooth Card (Probably not related, but maybe) to a new card that is Handoff native supported and removed a Bluetooth dongle, when I tried again today, worked like a champ, now have a recovery drive. Great stuff!
 
Last edited:
Joined
Mar 15, 2015
Messages
21
Motherboard
Intel NUC5i3MYHE (17D47)
CPU
i3-5010U
Graphics
HD 5500
Mac
  1. iMac
  2. MacBook
  3. MacBook Air
  4. MacBook Pro
  5. Mac mini
  6. Mac Pro
Mobile Phone
  1. iOS
My lordy - that was easy! Nice one jimmyfoz :)
Booted into Recovery HD on an Samsung NVMe m.2 drive too :)
Would a Time Machine restore work OK on a Hackintosh?

You Betcha! See my attached photo. I have a Synlogy NAS with a Time Machine partition on my LAN - the photo shows me booted into the Recovery partition, after choosing "Restore from Time Machine", browsing the network to find the backup, authenticating, etc. up to the point of choosing which backup to restore from.

In case anyone is wondering, my build / sitch
  • Intel NUC 5i3MYHE originally built on El Cap 10.11.2 using this guide (Oct 2015)
  • Currently running 10.11.6 (15G1212) - current patches as of today
  • I updated the recovery HD partition that was created way back in Oct 2015 by simply following the OP's instructions (thanks Jimmyfoz!)
    • Mounted InstallESD.dmg from latest Install OS X El Capitan.app
    • Copied BaseSystem.dmg from the InstallESD.dmg to Recovery HD
    • Copied prelinkedkernel to Recovery HD, including the "sudo touch" suggestion
...and that was it! Worked like a charm. Why'd I do it?
  • Before this AM I was *unable* to boot into recovery partition, which really sucked, because a Clover update borked my system (grrr)
  • Because I had no bootable partition/tools, fixing the Clover problem involved making a new Unibeast USB stick, etc. just to get into Terminal again - so I could then restore a backup of my EFI folder), I was like "never again".
In OS X, the boot loader looks for the unified prelinked kernel. This cache contains all kernel extensions that may be needed to boot a Mac with any hardware configuration, with the extensions already linked against the kernel.)

**Thank you** so much for explaining that. Now I understand why the Recovery partition would work at all.

If I had more time I'd write a script to do all this - totally repeatable operation...

Thanks to all!
 

Attachments

  • ElCap_NUC5i3MYHE_WorkingRecoveryPartition-TimeMachine.jpg
    ElCap_NUC5i3MYHE_WorkingRecoveryPartition-TimeMachine.jpg
    960.6 KB · Views: 348
Joined
Dec 4, 2012
Messages
4
Motherboard
MACOS
CPU
known
Graphics
...
Mac
Classic Mac
Mobile Phone
I can't thank you enough -- from Barcelona!
 
Joined
Nov 23, 2011
Messages
6
Motherboard
GA-P55-USB3
CPU
Quad Core i5
Graphics
NVIDIA GeForce GTX 960
Mac
  1. iMac
  2. MacBook
  3. MacBook Pro
Classic Mac
  1. iBook
  2. iMac
  3. Power Mac
Mobile Phone
  1. iOS
With this mod I can now boot the recovery tools, but my drives don't show up under Disk Utility or time capsule restore. With terminal, I see them with "df -k", but diskutil list reports a problem with diskmanager. This is a ga-p55-usb3 with clover legacy, and USB3 disabled in BIOS.




-bash-3.2# diskutil activity
***Begin monitoring DiskArbitration activity
***DiskAppeared ('disk0', DAVolumePath = '<null>', DAVolumeKind = '<null>', DAVolumeName = '<null>') Time=20170115-18:29:36.4804
***DiskAppeared ('disk0s1', DAVolumePath = '<null>', DAVolumeKind = 'msdos', DAVolumeName = 'EFI') Time=20170115-18:29:36.4823
***DiskAppeared ('disk0s2', DAVolumePath = 'file:///Volumes/Mac%20Storm/', DAVolumeKind = 'hfs', DAVolumeName = 'Mac Storm') Time=20170115-18:29:36.4826
***DiskAppeared ('disk0s3', DAVolumePath = 'file:///Volumes/Image%20Volume/', DAVolumeKind = 'hfs', DAVolumeName = 'Recovery HD') Time=20170115-18:29:36.4829
***DiskAppeared ('disk1', DAVolumePath = '<null>', DAVolumeKind = '<null>', DAVolumeName = '<null>') Time=20170115-18:29:36.4832
***DiskAppeared ('disk1s1', DAVolumePath = 'file:///', DAVolumeKind = 'hfs', DAVolumeName = 'OS X Base System') Time=20170115-18:29:36.4834
***DiskAppeared ('disk2', DAVolumePath = '<null>', DAVolumeKind = '<null>', DAVolumeName = '<null>') Time=20170115-18:29:36.4837
***DiskAppeared ('disk2s1', DAVolumePath = '<null>', DAVolumeKind = 'msdos', DAVolumeName = 'EFI') Time=20170115-18:29:36.4839
***DiskAppeared ('disk2s2', DAVolumePath = '<null>', DAVolumeKind = '<null>', DAVolumeName = '<null>') Time=20170115-18:29:36.4842
***DiskAppeared ('disk2s3', DAVolumePath = '<null>', DAVolumeKind = 'hfs', DAVolumeName = 'Boot OS X') Time=20170115-18:29:36.4844
***DiskAppeared ('disk2s4', DAVolumePath = 'file:///Volumes/BackupSL/', DAVolumeKind = 'hfs', DAVolumeName = 'BackupSL') Time=20170115-18:29:36.4847
***DiskAppeared ('disk2s5', DAVolumePath = '<null>', DAVolumeKind = 'hfs', DAVolumeName = 'Recovery HD') Time=20170115-18:29:36.4849
***DiskAppeared ('disk3', DAVolumePath = 'file:///Volumes/Backup/', DAVolumeKind = 'hfs', DAVolumeName = 'Backup') Time=20170115-18:29:36.4852
***DiskAppeared ('disk4', DAVolumePath = 'file:///private/var/log/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4855
***DiskAppeared ('disk5', DAVolumePath = 'file:///Volumes/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4857
***DiskAppeared ('disk6', DAVolumePath = 'file:///private/var/tmp/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4860
***DiskAppeared ('disk7', DAVolumePath = 'file:///private/var/run/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4862
***DiskAppeared ('disk8', DAVolumePath = 'file:///System/Installation/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4865
***DiskAppeared ('disk9', DAVolumePath = 'file:///private/var/db/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4868
***DiskAppeared ('disk10', DAVolumePath = 'file:///private/var/folders/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4870
***DiskAppeared ('disk11', DAVolumePath = 'file:///private/var/root/Library/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4873
***DiskAppeared ('disk12', DAVolumePath = '<null>', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4875
***DiskAppeared ('disk13', DAVolumePath = 'file:///Library/Preferences/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4878
***DiskAppeared ('disk14', DAVolumePath = 'file:///Library/Preferences/SystemConfiguration/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4880
***DiskAppeared ('disk15', DAVolumePath = 'file:///Library/Keychains/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4883
***DiskAppeared ('disk16', DAVolumePath = 'file:///private/var/tmp/RecoveryTemp/', DAVolumeKind = 'hfs', DAVolumeName = 'untitled') Time=20170115-18:29:36.4885
***DAIdle (no DADiskRef) Time=20170115-18:29:36.4887
diskutil: interrupted


-bash-3.2# diskutil list
Could not start up a DiskManagement session

-bash-3.2 #ps -ef
UID PID PPID C STIME TTY TIME CMD
0 1 0 0 6:11PM ?? 0:00.77 /sbin/launchd
0 109 1 0 6:12PM ?? 0:02.43 /usr/libexec/kextd
0 110 1 0 6:12PM ?? 0:00.95 /System/Library/PrivateFrameworks/CoreRAID.framework/Resources/CoreRAIDServer
0 112 1 0 6:12PM ?? 0:00.47 /usr/libexec/configd
0 113 1 0 6:12PM ?? 0:00.12 /System/Library/CoreServices/powerd.bundle/powerd
0 114 1 0 6:12PM ?? 0:00.35 /System/Installation/CDIS/instlogd
0 115 1 0 6:12PM ?? 0:00.24 /usr/libexec/findmydeviced
0 116 1 0 6:12PM ?? 0:00.13 /usr/libexec/airportd
240 118 1 0 6:12PM ?? 0:00.11 /System/Library/CoreServices/iconservicesd
0 119 1 0 6:12PM ?? 0:00.37 /System/Library/CoreServices/iconservicesagent
0 120 1 0 6:12PM ?? 0:00.23 /usr/libexec/diskarbitrationd
0 121 1 0 6:12PM ?? 0:10.76 /usr/sbin/syslogd
0 123 1 0 6:12PM ?? 0:00.10 /usr/libexec/opendirectoryd
0 125 1 0 6:12PM ?? 0:00.22 /System/Library/CoreServices/launchservicesd
0 126 1 0 6:12PM ?? 0:00.09 /usr/sbin/securityd -i
205 127 1 0 6:12PM ?? 0:00.24 /usr/libexec/locationd
0 129 1 0 6:12PM ?? 0:00.14 /usr/sbin/blued
65 130 1 0 6:12PM ?? 0:00.34 /usr/sbin/mDNSResponder
0 132 1 0 6:12PM ?? 0:00.03 /usr/sbin/KernelEventAgent
0 133 1 0 6:12PM ?? 0:00.03 /bin/sh /etc/rc.install
0 134 1 0 6:12PM ?? 0:00.04 /usr/libexec/hidd
0 135 1 0 6:12PM ?? 0:00.31 /usr/sbin/notifyd
241 136 1 0 6:12PM ?? 0:00.37 /usr/sbin/distnoted daemon
0 141 1 0 6:12PM ?? 0:00.22 /usr/sbin/cfprefsd daemon
0 142 1 0 6:12PM ?? 0:01.95 /System/Library/Frameworks/Security.framework/Versions/A/XPCServices/authd.xpc/Contents/MacOS/authd
0 184 1 0 6:12PM ?? 0:00.18 /System/Library/CoreServices/coreservicesd
0 259 1 0 6:12PM ?? 0:00.09 /usr/libexec/sandboxd
0 265 1 0 6:12PM ?? 0:01.36 /usr/libexec/lsd runAsRoot
24 282 1 0 6:12PM ?? 0:00.12 /usr/libexec/networkd
0 395 1 0 6:12PM ?? 0:00.08 /usr/libexec/networkd_privileged
0 429 1 0 6:12PM ?? 0:00.05 /usr/libexec/securityd_service
0 437 133 0 6:12PM ?? 0:01.57 /System/Library/CoreServices/Language Chooser.app/Contents/MacOS/Language Chooser /System/Installation/CDIS/OS X Installer.app/Contents/MacOS/OS X Installer -ExternalLog YES -NSDisabledCharacterPaletteMenuItem YES /System/Installation/Packages/OSInstall.mpkg
0 438 133 0 6:12PM ?? 0:01.10 /usr/bin/logger -t -p install.warn
0 439 1 0 6:12PM ?? 0:00.11 /usr/sbin/ocspd
88 440 1 0 6:12PM ?? 0:07.39 /System/Library/Frameworks/ApplicationServices.framework/Frameworks/CoreGraphics.framework/Resources/WindowServer -daemon
-2 443 1 0 6:12PM ?? 0:00.16 /System/Library/PrivateFrameworks/WebContentAnalysis.framework/Resources/webfilterDNSd
0 446 1 0 6:12PM ?? 0:00.06 /System/Library/Frameworks/Security.framework/Versions/A/XPCServices/com.apple.CodeSigningHelper.xpc/Contents/MacOS/com.apple.CodeSigningHelper
97 447 1 0 6:12PM ?? 0:02.33 /System/Library/Frameworks/ApplicationServices.framework/Frameworks/ATS.framework/Support/fontd
0 451 1 0 6:13PM ?? 0:00.05 /usr/sbin/pboard
0 456 437 0 6:13PM ?? 0:01.46 /System/Installation/CDIS/OS X Utilities.app/Contents/MacOS/OS X Utilities -ExternalLog YES -NSDisabledCharacterPaletteMenuItem YES /System/Installation/Packages/OSInstall.mpkg -AppleLanguages (en)
0 458 1 0 6:13PM ?? 0:00.11 /usr/libexec/diskmanagementd
0 459 456 0 6:14PM ?? 0:11.66 /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal -NSDisabledCharacterPaletteMenuItem YES -AppleKeyboardUIMode 2 -AppleLanguages (en)
202 462 1 0 6:14PM ?? 0:00.21 /usr/sbin/coreaudiod
202 464 1 0 6:14PM ?? 0:00.04 /System/Library/Frameworks/CoreAudio.framework/Versions/A/XPCServices/com.apple.audio.DriverHelper.xpc/Contents/MacOS/com.apple.audio.DriverHelper
0 460 459 0 6:14PM ttys000 0:00.04 -bash
0 474 460 0 6:18PM ttys000 0:00.01 ps -ef


I also see allot of system.log activity, with a continuous stream of these messages:
Jan 15 18:22:36 iMac kernel[0]: Sandbox: authd(142) deny(1) sysctl-read kern.hostid
Jan 15 18:22:36 iMac kernel[0]: Sandbox: authd(142) deny(1) process-info-pidinfo
Jan 15 18:22:36 iMac authd[142]: sysctl() failed (Operation not permitted)
Jan 15 18:22:36 iMac authd[142]: process[110]: failed to create code ref 100001
Jan 15 18:22:36 iMac authd[142]: xpc[110]: failed to register connection
Jan 15 18:22:36 iMac kernel[0]: Sandbox: authd(142) deny(1) sysctl-read kern.hostid
Jan 15 18:22:36 iMac kernel[0]: Sandbox: authd(142) deny(1) process-info-pidinfo
Jan 15 18:22:36 iMac authd[142]: sysctl() failed (Operation not permitted)
Jan 15 18:22:36 iMac authd[142]: process[110]: failed to create code ref 100001
Jan 15 18:22:36 iMac authd[142]: xpc[110]: failed to register connection
 
Joined
Mar 1, 2016
Messages
1
Motherboard
MSI Intel Skylake H110 LGA 1151 DDR4 USB 3.1 Micro ATX Motherboard (H110M Pro-D)
CPU
Intel Core i5 6600K 3.50 GHz Quad Core Skylake Desktop Processor, Socket LGA 1151, 6MB Cache (BX8066
Graphics
Intel HD Graphics 530
Mac
  1. iMac
This is a very quick guide on making the Recovery HD partition usable in El Capitan, bootable via Clover.

1- " diskutil list "
* you will get de partition list, note that the Recovery Partition is obviously named " Recovery HD "...
* check the number of the partition it is in, in this case, 3:, so, you will have disk0s3 as mount device...
---

/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *240.1 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_HFS El Capitan 239.2 GB disk0s2
3: Apple_Boot Recovery HD 650.0 MB disk0s3

---

2- create a folder in Volumes folder for Recovery HD and mount it there...
" sudo mkdir /Volumes/Recovery\ HD/ "
" sudo mount -t hfs /dev/disk0s3 /Volumes/Recovery\ HD/ "

3- enter the directory and remove the " prelinkedkernel "

" cd /Volumes/Recovery\ HD/com.apple.recovery.boot/ "
" sudo rm -rf prelinkedkernel "

4- now, copy your working prelinkedkernel there...

" sudo cp /System/Library/PrelinkedKernels/prelinkedkernel /Volumes/Recovery\ HD/com.apple.recovery.boot/ "
and just in case...
" sudo touch prelinkedkernel "

5- reboot and test it... (takes some time to load even in real macs)

Enjoy!

Thanks! I can now boot recovery from my hard drive from Clover. I'm using Sierra 10.12.2 and this worked great for that!
 
Top