dosdude1 / macos-catalina-patcher

macOS Catalina Patcher (http://dosdude1.com/catalina)
GNU General Public License v3.0
420 stars 59 forks source link

Macbook can’t boot into Recovery Mode #106

Closed kauniss closed 3 years ago

kauniss commented 3 years ago

Catalina 10.15.7 - using the Catalina Patcher, checked I have latest update (10/10/2020) MacbookPro6,2

Just installed Catalina on my old Macbook Pro mid 2010 , for the first time, and all works quite well. Except that I can’t seem to enter Recovery Mode (holding cmd+R during startup) since the install. So I can’t reactivate SIP at the moment.

Would appreciate some help!

joevt commented 3 years ago

You could bless the boot.efi file on the Recovery partition, then hold option key at startup to see the Startup Manager and select it that way. If your boot rom doesn't have APFS driver, then you can try to make the APFS driver load before the Startup Manager. https://forums.macrumors.com/threads/mac-pro-3-1-nvme-support-upgrade-guide-questions.2194878/page-4?post=28956730#post-28956730 But if your Mac doesn't support unpatched Catalina, then it might not support unpatched Recovery. Does the Patcher patch Recovery?

Or you can try using rEFInd to disable/enable SIP. https://www.rodsbooks.com/refind/sip.html#disable_in_refind

jhallstr commented 3 years ago

Catalina 10.15.7 - using the Catalina Patcher, checked I have latest update (10/10/2020) MacbookPro6,2

Just installed Catalina on my old Macbook Pro mid 2010 , for the first time, and all works quite well. Except that I can’t seem to enter Recovery Mode (holding cmd+R during startup) since the install. So I can’t reactivate SIP at the moment.

Would appreciate some help!

Does your Wifi work on your MBP 6,2 under 10.15.7? Asking for a friend. (ok, its for me)

kauniss commented 3 years ago

bless

Bless?

boot.efi file on the Recovery partition, then hold option key at startup to see the Startup Manager and select it that way.

I shall try this and report when I’ve tried.

Does your Wifi work on your MBP 6,2 under 10.15.7? Asking for a friend. (ok, its for me)

Yep it does!

joevt commented 3 years ago

bless

Bless?

boot.efi file on the Recovery partition, then hold option key at startup to see the Startup Manager and select it that way.

Mount the Recovery partition, then bless the boot.efi file that is in the recovery partition.

sudo diskutil mount Recovery
IFS=$'\n'
for thefile in $(find /Volumes/Recovery*/*/boot.efi); do
    sudo bless --folder $(dirname "$thefile") --file "$thefile" --label "Recovery"
done

After that, the Recovery item may appear in the boot picker (I've only done this on an old Mac Pro 2008).

kauniss commented 3 years ago

Just to report: I used the command you gave me above, it said the RD was mounted successfully, and then entered what I assume to be the boot picker (holding option/alt at startup), but it had not appeared as an option.

However! I did manage to enter the Recovery Drive from the boot pick menu, by holding down cmd+R here while clicking the main startup disk, as opposed to doing it directly at startup.

So I guess we can close this thread.

Worth noting, once there, I cannot use First Aid due to:

joevt commented 3 years ago

Maybe my method of blessing the apfs recovery partition doesn't work on newer Macs (though your MacBook Pro is only a couple years newer than my Mac Pro 2008).

blessing an apfs partition is weird. If you try to bless the system, it blesses preboot instead (or it blesses both? I need to check that). If you try to bless recovery, it won't show if it was successful (bless --info doesn't show anything for the recovery volume). All I know is, after I bless it, the recovery apfs volume will appear in the boot picker (if I have the apfs driver loaded with the Driver#### nvram variable since my firmware doesn't include apfs).

joseterra commented 1 year ago

to solve the inability to enter recovery with OC legacy catalina patcher, you have to use a version of the recovery of a compatible macos version with macbook and install that (i.e. High Sierra Recovery). to do it: 1) first download a compatible recovery (one can also recover it from the previous installation of your system, following the steps below, before installing the unsupported macos or from another mac) and copy all files to a new folder; 2) with the diskutil list command, check the name of the recovery partition (eg, disk1s4); 3) mount the recovery already installed (the one that does not start), with the command: sudo diskutil mount /dev/disk1s4(changing with the correct name of your recovery partition); 4) open the recovery with the command: open /Volumes/Recovery/(it may be necessary to add sudo to the start of the command); 5) The recovery volume will open, inside which there is a folder with a long identifier: do not absolutely change the folder name. Copy all the recovery files (the downloaded High Sierra one) into the folder you have opened. You will be asked whether to overwrite and to authenticate and enter your password, do it. 6) after copying the High Sierra recovery files into the Catalina Recovery folder (point 5 above), issue the following command:

sudo diskutil mount Recovery
IFS=$'\n'
for thefile in $(find /Volumes/Recovery*/*/boot.efi); do
sudo bless --folder $(dirname "$thefile") --file "$thefile" --label "Recovery"
done

7) reboot and do a NVRAM reset. You should be able to boot into recovery by pressing command+r or selecting boot from the legacy OC picker.

I think this method can be adopted for any version of macos and OC legacy!