1

I have macOS Catalina 10.15.3 (FileVault2 is enabled) installed with Windows 10 in dual-boot and I was able to sucessfully change the Windows icon, but I can't figure out how to modify the icon for my Macintosh HD drive.

I tried with SIP disabled :

- to replace ".VolumeIcon.icns" inside /System/Volume/Data/ by a custom one
- To use the Get-Info box from the Finder and changing the icon from here

The changes are working inside the Finder but not when holding "Alt" and using the Mac Startup Manager..

Is there a proper way to achieve this?

7
  • Did you try updating the preboot volume? That's what the firmware looks at before it can unlock the rest.
    – lx07
    Commented Feb 19, 2020 at 20:43
  • I just gave it a try and used this command : sudo cp /Users/admin/Desktop/icon.icns /Volume/Preboot/*****/System/Library/CoreService/.VolumeIcon.icns but sadly it didn't worked.
    – AppleIx
    Commented Feb 20, 2020 at 1:16
  • Does the Mac ask for the password to unlock the before or after displaying the icons in the Startup Manager? Commented Feb 20, 2020 at 1:22
  • The only password asked before i can get into the Startup Manager is the Firmware password so not related i think. I can make a video of the boot process it that could help.
    – AppleIx
    Commented Feb 20, 2020 at 13:58
  • Here is a video of the mac booting : youtu.be/y3dNZ_jmWm8
    – AppleIx
    Commented Feb 20, 2020 at 14:26

2 Answers 2

3

Note: Not all icns files are compatible with the firmware installed in your Mac. You may need to convert an icns file to a different format before the file will be recognized by the firmware.

You first need to determined the identifier for the APFS Preboot volume from the output of the command diskutil list. Below is an example.

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +898.0 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Muskie                  32.2 GB    disk1s1
   2:                APFS Volume Preboot                 120.5 MB   disk1s2
   3:                APFS Volume Recovery                1.0 GB     disk1s3
   4:                APFS Volume VM                      8.6 GB     disk1s4
   5:                APFS Volume Snapper - Data          741.9 GB   disk1s5
   6:                APFS Volume Snapper                 11.2 GB    disk1s6

From the above output, the identifier for the APFS Preboot volume is disk1s2. If you have a different identifier, then make the appropriate substitutions. Enter the following commands to copy the icns file to the Preboot volume.

diskutil mount disk1s2
sudo cp /Users/admin/Desktop/icon.icns /Volumes/Preboot/.VolumeIcon.icns
diskutil unmount disk1s2

In the above example, there are two versions of macOS installed in the container. The Muskie volume has High Sierra installed. The Snapper and Snapper - Data volumes have Catalina installed. When booted to the Mac Startup Manager, the .VolumeIcon.icns file, stored in the root of the Preboot volume, is used to display the same image for both operating systems.

If you wanted different images in the Mac Startup Manager for each version of macOS, then you could install both versions of MacOS in different containers. Or, the same container could be used, but I am not sure if this would work when encryption is employed. An example is given below.

The previous example used the /Users/admin/Desktop/icon.icns file. In this example, this file is replaced by the two files High Sierra.icns and Catalina.icns stored in the Desktop folder of your Catalina account. Images of both files are shown below.

High Sierra Catalina

The following steps could be used to install the icns files.

Note: You do not have to disable SIP.

  1. Boot to Catalina and enter the commands given below to remove any existing .VolumeIcon.icns file from the root of the Preboot volume.

    diskutil mount disk1s2
    sudo rm /Volumes/Preboot/.VolumeIcon.icns
    diskutil unmount disk1s2
    

     

  2. Enter the following command to install the image for High Sierra.

    sudo cp "$HOME/Desktop/HighSierra.icns /Volumes/Muskie/.VolumeIcon.icns
    

     

  3. Boot to High Sierra and enter the command given below to install the image of Catalina.

    sudo cp "/Volumes/Snapper - Data/Users/$USER/Desktop/Catalina.icns" /Volumes/Snapper/.VolumeIcon.icns
    

 

Update for Big Sur

The Preboot volume is already mounted at /System/Volumes/Preboot. To change this volume while using macOS Big Sur, first you will have to disable SIP.

2
  • I can confirm this worked perfectly on Catalina, unfortunately I don't seem to be able to mount Preboot on Big Sur. It says "Mounted", but it's not available. And if I try to unmount I'm presented with: Volume Preboot on disk1s2 failed to unmount: dissented by PID 0 (kernel_task)
    – DIYglenn
    Commented Nov 19, 2020 at 12:13
  • @DIYglenn: I updated my answer. Does this update satisfy your comment? Commented Nov 20, 2020 at 11:35
0

I fixed it in Big Sur by booting to Recovery Mode, mounting the (encrypted) macOS - Data partition in Terminal, and then running the above commands (Copying from my mounted main partition). This does not require deactivating SIP.

1
  • 1
    Welcome to Ask Different and thank you for posting an answer.. Could you specify what the "above commands" are? In David Anderson's question there are several sets of commands.
    – jaume
    Commented Nov 23, 2020 at 11:40

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .