dosdude1 / macos-catalina-patcher

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

Dualboot #227

Open CIaudi0 opened 1 year ago

CIaudi0 commented 1 year ago

Hi, I would like to install in dual boot Catalina and linux on the same disk. But when I install for example lubuntu or Debian , Linux’s grub overwrites Catalina boot. How I can resolve ? Thanks.

joevt commented 1 year ago

Put Catalina boot on a non-EFI partition. It only has to be large enough to contain the Catalina boot files (< 10MB). My partition is 50MB.

Make it a HFS+ partition so that it will appear with a proper name in the Apple Startup Manager when you hold the option key at boot. Give it a nice volume icon.

I've attached a copy of my Catalina Boot partition. CatalinaBoot.zip

Catalina Boot

The .VolumeIcon.icns icon is a file I created with the help of my VolumeIconUtil.sh script. It has a checkiconcompatibility command that can check the compatibility of the .VolumeIcon.icns file of all mounted partitions. I use the commands from my DiskUtil.sh script to mount all EFI, RecoveryHD, Recovery, and Preboot partitions before checking all the icons. I have a Mac Pro 2008. It's possible that you have a newer Mac that has newer volume icon support in EFI and that you won't be using an old Mac OS X version that doesn't support some icon types and therefore, you might not need to modify the icons.

The ShellX64.efi file is a copy of the BootX64.efi from Catalina patcher. It's not really a boot loader so I renamed it back to ShellX64.efi so it won't be confused with a boot loader (like grub, rEFInd, RefindPlus, Clover, OpenCore, Windows boot, etc.)

The Catalina_Boot.worksheet file is a BBEdit worksheet file that contains commands I used to bless the ShellX64.efi file.

sudo bless --folder /Volumes/Catalina\ Boot/macOSCatalinaPatcher --file /Volumes/Catalina\ Boot/macOSCatalinaPatcher/ShellX64.efi --setBoot

I used my makemultilinedisklabel command from my DiskUtil.sh script to make the .disk_label files but you can use the --label option in the bless command to make a single line disk label.

Edit the startup.nsh script for your needs. In my attached example, I added stuff for my GC-ALPINE RIDGE Thunderbolt add-in card in the startup.nsh script. You should remove those lines.

I created a similar partition named Mojave Boot to boot Mojave using the Mojave patcher.

I have an OCLP partition for Monterey, Big Sur, and Ventura. That one is formatted as FAT so that it can save log files from OpenCore. Basically, any EFI boot loader that creates log files needs to be on a FAT partition to save the log unless it has the ability to save the log to a different partition. The EFI partition is FAT.