macOS Big Sur - Volume Mounting Workaround

  • 1.5K Views
  • Last Post 15 October 2020
Robert Bousfield posted this 30 September 2020

Hello,

As a temporary workaround (until Promise release an updated installer or Apple fixes the KEXT loading) Promise RAID volumes can be mounted at startup by using a manually created LaunchDaemon.

I had already installed the Promise Driver in a previous beta release so the required PromiseSTEX.kext  was already in place. You may need to do this.

I have tested the this on my Mac Pro with a Pegasus2 R4.

  • Text below entered into plain text editor (I used BBEdit)
  • Saved in /Library/LaunchDaemons with file name: com.promiseload.loader.plist (permissions set to 644)
  • Shut down Mac Pro.
  • Restarted Mac Pro
  • Expected RAID volumes mount when user logs on.
  • Tested with System Integrity Protection on and off.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>EnvironmentVariables</key>
    <dict>
        <key>PATH</key>
        <string>/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin</string>
    </dict>
    <key>Label</key>
    <string>com.promiseload.loader</string>
    <key>ProgramArguments</key>
    <array>
        <string>/sbin/kextload</string>
        <string>/System/Library/Extensions/PromiseSTEX.kext</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>

 

Hope this is useful for those helping to test the latest macOS release. 

Order By: Standard | Latest | Votes
Robert Bousfield posted this 15 October 2020

Since upgrading to Big Sur Beta 10 (20A5395g ) I think the Promise drivers are now being loaded as expected, i.e. without any workaround.

 

I have disabled my custom LaunchDaemon and restarted several times with the drives mounting as expected.

 

Can someone else verify this?

 

 

Leo Kuhn posted this 06 October 2020

I have MacPro 2013 and a Pegasus2 R8.

After booting BigSur, the R8 does not appear.

But if I move the PromiseSTEX.kext to the desktop, and a few seconds later to the extensions folder, the volume appears.

Unfortunately my main user folder is on the R8, so that is not a usable solution.

Pieter Pretorius posted this 04 October 2020

This also doesn't work for my Promise Pegasus 3 R6.

The PromiseSTEX.kext file is actually in both locations I see.

 

Pieter.

 

Robert Bousfield posted this 01 October 2020

Hi Rick,

Can I ask - is the PromiseSTEX.kext located in your /System/Library/Extensions folder?

 

Or is is in /Library/Extensions?

 

You may need to edit the script to point to the correct location on this line:

 

<string>/System/Library/Extensions/PromiseSTEX.kext</string>

 

I upgraded over a Catlina 10.5.7 install prior to testing this and the required KEXT on my machine was in the /System/Library area.

 

 

Looking at the installer for your device it looks like it puts the file in /Library/Extensions.

 

 

It looks like the same driver as for the R2 so I installed it, sure enough it puts files in /Library/Extensions

 

I modified the script and made sure the permissions were set as follows using a freeware app called batchmod:

 

Restarted and the RAID volumes mounted.

I would suggest the plist file does need to be in /Library/LaunchDaemons, not at the user account level.

Rob

Rick Squires posted this 01 October 2020

I've tried this- put the plist in both /Library and /User/Library LaunchDaemons folders.  Doesnt work.  My workround is to put the installer into my Login Items llist and run it every time I log on. Then Force Quit the Installer. Takes a minute, but it is messy.  I'm using a Pegasus 3 R4, so maybe thats why it's not working..  I was disappointed as Beta 9 was supposed to fix this.  Having said that, I've run the Blackmagic speed tests and got essentially the same speeds I get under Mojave(I've not really opened the Catalina can of worms yet)

Rick Squires posted this 30 September 2020

This is very helpful.  The alternative approach of running the Installer and force quitting it when its done works, but is a bit of a pain

Hopefully Apple will get their act together in some later version of the Big Sur beta

 

Thanks a gain

 

Hello,

As a temporary workaround (until Promise release an updated installer or Apple fixes the KEXT loading) Promise RAID volumes can be mounted at startup by using a manually created LaunchDaemon.

I had already installed the Promise Driver in a previous beta release so the required PromiseSTEX.kext  was already in place. You may need to do this.

I have tested the this on my Mac Pro with a Pegasus2 R4.

  • Text below entered into plain text editor (I used BBEdit)
  • Saved in /Library/LaunchDaemons with file name: com.promiseload.loader.plist (permissions set to 644)
  • Shut down Mac Pro.
  • Restarted Mac Pro
  • Expected RAID volumes mount when user logs on.
  • Tested with System Integrity Protection on and off.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>EnvironmentVariables</key>
    <dict>
        <key>PATH</key>
        <string>/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin</string>
    </dict>
    <key>Label</key>
    <string>com.promiseload.loader</string>
    <key>ProgramArguments</key>
    <array>
        <string>/sbin/kextload</string>
        <string>/System/Library/Extensions/PromiseSTEX.kext</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>

 

Hope this is useful for those helping to test the latest macOS release. 

Close