Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.

jackluke

macrumors 68040
Jun 15, 2018
3,321
8,068
Yes, this is true, the BCM94360.kext plugin is not needed in my IO80211Family.kext, this was my wake from sleep issues on the Mac Pro 5,1. However I'm unable to continue testing at the moment because I cannot mount my boot partition (sudo mount -uw /) anymore for modifications, error 66 of course, so can't test or install.

TLDR: IO80211Family now uses AirPortBrcmNIC for the 4360.


I'm looking in Disk Utility, and when a reinstall occurred, it's now using the -Data partition as the boot disk, very strange, I think I need to erase and redo this install.


When I mixed too many kext, so I decided to re-install getting a similar issue, but I managed to fix the BigSur APFS Data "as invalid boot Volume", you should check this path (doable also from Catalina):

/Volumes/Preboot/UUID-BigSur/System/Library/CoreServices/com.apple.Boot.plist

(also in the same folder I advise to remove this PlatformSupport.plist )


Editing the com.apple.Boot.plist , you should modify this: <string>-bsdmgroot</string> to <string></string>

The correct plist should be this:
Code:
<?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>Kernel Cache</key>
    <string>boot\System\Library\KernelCollections\BootKernelExtensions.kc</string>
    <key>Kernel Flags</key>
    <string></string>
</dict>
</plist>


Then just change the label open a recovery terminal (I can do this also from Catalina):
Code:
sudo bless --folder /Volumes/YourBigSurLabel/System/Library/CoreServices --label "YourBigSurLabel"


If still doesn't fix you might try also this from a recovery environment:
Code:
diskutil apfs updatePreboot /Volumes/YourBigSurLabel/


That said, after another re-installation of BigSur I still can use "sudo mount -uw /" and mount the BigSur System Volume from Catalina without any issue.
 
Last edited:

quaccOS

macrumors regular
Apr 19, 2020
126
208
try directly from USB BigSur Installer recovery terminal: mount -uw /Volumes/YourBigSurLabel/

or maybe open first the "recovery DiskUtility" and mount your BigSur System (not Data volume), then close (without exit from recovery) and retry from recovery terminal.
From USB BS Installer Recovery Terminal:
diskutil mount disk2s5 Volume Big Sur on disk2s5 mounted

mount -uw /Volumes/Big\ Sur/ mount: unknown special file or file system /Volumes/Big Sur/.

SIP was enabled according to csrutil status. I tried running csrutil disable & csrutil authenticated-root disable but it was still enabled after reboot.

Now, my external BS recovery boots to a circle-backslash 🚫 symbol.
I made new BS recovery with
sudo /Applications/Install\ macOS\ Beta.app/Contents/Resources/createinstallmedia --volume /Volumes/Install\ macOS\ Beta and cleared the NVRAM variables: nvram -c.
Then, proceeded to add the NVRAM boot arguments: nvram boot-args="no_compat_check amfi_get_out_of_my_way=1".
USB Big Sur Recovery still won't boot. I can't make the system volume writable anyway, so I'm unable to remove /Volumes/Big\ Sur/System/Library/UserEventPlugins/com.apple.telemetry.plugin.
 
  • Like
Reactions: TimothyR734

jackluke

macrumors 68040
Jun 15, 2018
3,321
8,068
From USB BS Installer Recovery Terminal:
diskutil mount disk2s5 Volume Big Sur on disk2s5 mounted

mount -uw /Volumes/Big\ Sur/ mount: unknown special file or file system /Volumes/Big Sur/.

SIP was enabled according to csrutil status. I tried running csrutil disable & csrutil authenticated-root disable but it was still enabled after reboot.

Now, my external BS recovery boots to a circle-backslash 🚫 symbol.
I made new BS recovery with
sudo /Applications/Install\ macOS\ Beta.app/Contents/Resources/createinstallmedia --volume /Volumes/Install\ macOS\ Beta and cleared the NVRAM variables: nvram -c.
Then, proceeded to add the NVRAM boot arguments: nvram boot-args="no_compat_check amfi_get_out_of_my_way=1".
USB Big Sur Recovery still won't boot. I can't make the system volume writable anyway, so I'm unable to remove /Volumes/Big\ Sur/System/Library/UserEventPlugins/com.apple.telemetry.plugin.

You should make with createinstallmedia an USB BigSur Installer (that is equivalent to a macOS Recovery) and after you have an USB BigSur Installer, show all hidden files, and edit this file:

/Volumes/USBInstallerBigSur/Library/Preferences/SystemConfiguration/com.apple.Boot.plist

Code:
<?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>Kernel Flags</key>
    <string>root-dmg=file:///BaseSystem/BaseSystem.dmg -no_compat_check cs_enforcement_disable=1 cs_debug=1 amfi_allow_any_signature=1 amfi_get_out_of_my_way=1</string>
</dict>
</plist>
 

ricoc90

macrumors newbie
Jun 22, 2018
27
73
From USB BS Installer Recovery Terminal:
diskutil mount disk2s5 Volume Big Sur on disk2s5 mounted

mount -uw /Volumes/Big\ Sur/ mount: unknown special file or file system /Volumes/Big Sur/.

Regarding the "unknown special file or file system" issue,
I had the same issue. However it did work for me when I put the path within quotation marks.
mount -uw "/Volumes/Big Sur"
 

quaccOS

macrumors regular
Apr 19, 2020
126
208
I can't boot my USB BS Installer! 🚫 I made it with the same method as the last one — using createinstallmedia:
sudo ~/Downloads/Install\ macOS\ Beta.app/Contents/Resources/createinstallmedia --volume /Volumes/Install\ macOS\ Beta

This is so strange. I must have screwed up when I was in the BS Recovery terminal. I printed NVRAM variables, and the last line is still boot-args no_compat_check amfi_get_out_of_my_way=1. I don't know how to fix this one…

Edit: I forgot the HYPHEN (-) in my NVRAM boot args!…HYPHEN NO COMPAT CHECK! Aaaah!
 
Last edited:

pkouame

macrumors 65816
Jul 7, 2016
1,054
2,319
Nope. And just updating them to add the missing symbols isn't sufficient.

I've only barely worked on that though, because I can't figure out how to reliably disable this stupid snapshots/sealing stuff. Getting different results each time I install, posting patcher scripts that turn out not to work... this is frustrating and embarrassing, haha. I'm tempted to switch to the OpenCore method, but would also like to get to the bottom of this.
no need for apologies at all! making the sausage is always ugly... praise to you for a very early method of installing on unsupported devices. Making all of this easy for patcher utilities is just another challenge, but apple crypto is surely not making this any easier.

BS is a major release, the old CoreDisplay and Skylight wrapper approach for non-metal GPUs may no longer be sufficient. I think Apple has upped the ante even more with full metal support across the entire os - dropping whatever backwards compatibility gl hooks existed in CAT and below. I'm not surprised that old gl frameworks are still distributed , but have you had a chance to otool some critical libraries to check for gl framework links? Would be interesting to know which graphic libs actually still reference the gl dylibs...
 

TimothyR734

macrumors 68030
Apr 10, 2018
2,723
2,753
Logsden Oregon
no need for apologies at all! making the sausage is always ugly... praise to you for a very early method of installing on unsupported devices. Making all of this easy for patcher utilities is just another challenge, but apple crypto is surely not making this any easier.

BS is a major release, the old CoreDisplay and Skylight wrapper approach for non-metal GPUs may no longer be sufficient. I think Apple has upped the ante even more with full metal support across the entire os - dropping whatever backwards compatibility gl hooks existed in CAT and below. I'm not surprised that old gl frameworks are still distributed , but have you had a chance to otool some critical libraries to check for gl framework links? Would be interesting to know which graphic libs actually still reference the gl dylibs...
I sent you a DM and a copy of SKYlight from Catalina and BS :)
 
  • Like
Reactions: K two and pkouame

johncaling40

macrumors newbie
Jun 25, 2020
8
9
Hey everyone! After wasting half the day on this, I finally figured out one piece of the snapshots/error 66 puzzle.

The TL;DR is that you can just call apfs_systemsnapshot -v /Volumes/... -r "" to boot from the live volume. I haven't seen this published anywhere yet, and the accepted wisdom seems to be that you can't boot the live volume in BS. Hopefully this method will continue to work. It will make patching much easier.

Long version:
- disable SIP, including ARV (funnily enough, my very early boot.efi patch with all the 0xffffffffs actually works for this, even though @dosdude1's 0x67 one does not Edit: posted the new patch)
- boot into Big Sur or a BS recovery/install disk
- diskutil mount diskXsY the real system volume (not the root snapshot, which will already be mounted at diskXsYsZ)
- find the path to the mounted volume (if you're booted into the same system, it will be volume_name 1 because of the previously mounted snapshot)
- /S*/L*/F*/apfs.fs/C*/R*/apfs_systemsnapshot -v "/Volumes/volume_name" -r ""
- reboot
- mount -uw / should now work, changes will apply immediately to the live volume, and you can remove all the snapshots with diskutil apfs deletesnapshot if desired

(I spent ages reverse engineering apfs_systemsnapshot and learning about the fs_snapshot_* functions before realizing you could just call the tool with an empty string. But if anyone is interested in the code for programmatically managing snapshots, I am happy to share it.)

Thanks to @mac_4eva/this post for the starting point.

One remaining mystery is figuring out how to mount the BS root from Cat. With the sealing/snapshots disabled, I don't see any reason why it shouldn't be possible.

I hope this works for others!
When I run that command replacing ... with the name of my volume, I get "command not found apfs_systemsnapshot".
 

Barry K. Nathan

macrumors 6502
Jul 6, 2018
387
1,145
Irvine, CA, USA
You miss the point. Currently Big Sur already requires SIP to be disabled in order to allow unsupported legacy kernel extensions to load. If that gets removed by Apple, one would likely have to hack code that loads very early and which probably has some serious signing requirements imposed upon it. Good luck with that.
When I saw that part of the release notes, I interpreted it differently -- I figured "temporarily" meant "until the kernel extension developers get their act together and release updated software" (think of 3rd-party hardware or software that requires kernel extensions).

Setting that issue of interpretation aside, also remember that Apple doesn't always follow through on their deprecations in a timely manner, and that works to our advantage. For example, remember when Apple deprecated their version of Java (sometime in the Snow Leopard or Lion timeframe), then said El Capitan would be the last macOS release compatible with that version of Java? Sierra and High Sierra ended up being compatible as well.

Basically, it is far too soon to give up hope.
 

Barry K. Nathan

macrumors 6502
Jul 6, 2018
387
1,145
Irvine, CA, USA
Mr. Kaiser has noticed something very interesting about Universal Binaries and Rosetta 2 in Big Sur. https://tenfourfox.blogspot.com/2020/06/the-super-duper-universal-binary.html
Wow. It never occurred to me before that the different components of a Universal binary could be built using different SDKs. (There's plenty of other interesting stuff in that blog post, but I personally found that to be the most interesting bit.)
[automerge]1593122288[/automerge]
To fix the "BigSur mount -uw /" I read many (even on other forums) suggested to enter the USB BigSur Installer or Recovery and typing: csrutil authenticated-root disable

My question is, are they sure that this is effective without a BigSur EFI firmware update ?

I mean, csrutil disable surely works on "El Capitan Supported Mac" because they received an El Capitan EFI firmware update, but about this "new BigSur csrutil", I guess, maybe wrongly, that is useless on unsupported BigSur Mac.
I don't think lack of EFI updates should be a problem. I think the csrutil stuff is being handled by the kernel and not EFI. (For example, as I mentioned in post #725, I can manipulate the csrutil status directly using the nvram command if I reboot into Recovery from Mavericks or earlier. If it was being handled by EFI, I think rebooting into Mavericks recovery wouldn't let me manipulate it using the nvram command.)
 
Last edited:

jmbZ

macrumors newbie
Jun 23, 2020
29
35
I've finished my guide on making wifi work with "failed with 66" error.

DO IT ON YOUR OWN RISK. THERE IS HIGH CHANCE OF DAMAGING YOUR OS AND HARDWARE.

NEVER DO IT ON MACHINE THAT HAS IMPORTANT DATA.

I'M NOT RESPONSIBLE FOR ANY DAMAGES, IT ALL ON YOU.

THE PROCESS IS COMPLICATED.


Huge thanks to @mac_4eva, @jackluke and @highvoltage12v for their research and hints.

Enjoy: https://medium.com/@andv/making-wif...d-macs-with-failed-with-66-error-36c98e3f7965
This was a painful fix. But I got to say it works
 
  • Like
Reactions: TimothyR734

quaccOS

macrumors regular
Apr 19, 2020
126
208
My Big Sur Beta Installation on MacBook Pro 7,1
Create a blank partition, separate to your main Catalina partition to get started.

1 • Download the InstallAssistant.pkg containing the BS Beta.

2 • Open & run it in order to install the Install macOS Beta.app to /Applications.

3 • Download @ASentientBot's Hax.dylib and move it to your home (folder) directory: ~/ or /Users/your_home_folder_name/
– e.g. mv ~/Downloads/Hax.dylib ~/
– Disable System Integrity Protection (SIP) if it isn't already. Boot into Cat recovery and type in csrutil disable

4 • Disable Library Validation via this command: sudo defaults write /Library/Preferences/com.apple.security.libraryvalidation.plist DisableLibraryValidation -bool true”

5 • Inject the Hax dynamic library file via this command: launchctl setenv DYLD_INSERT_LIBRARIES ~/Hax.dylib. This allows you to force install BS without getting "The operation couldn't be completed (BIErrorDomain Error 3)".

6 • Open Install macOS Beta app and install BS. It will restart a few times during installation. The grey Apple logo will turn white for whatever reason. It should take 40 minutes, then you'll hit a grey prohibited symbol 🚫

7 • Boot back into your Cat partition, and run sudo nvram boot-args="-no_compat_check amfi_get_out_of_my_way=1" in the Terminal. These boot arguments stop the compatibility being checked and disables AMFI (Apple Mobile File Integrity – stops you running unsigned code)

8 • Make a bootable external drive installer containing Big Sur's Recovery. sudo ~/Downloads/Install\ macOS\ Beta.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume
- Apple has a support page on using the createinstallmedia command:
9 • Edit the Boot properties list of your new Big Sur USB installer.
Go to /Volumes/Install\ macOS\ Beta/Library/Preferences/SystemConfiguration/com.apple.Boot.plist Open the com.apple.Boot.plist file, using TextEdit is convenient. Use Shift+Command+Dot to enable/disable the showing of all hidden files (as it is a hidden file). Change the file to be like @jackluke's version, and save:
XML:
<?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>Kernel Flags</key>
    <string>root-dmg=file:///BaseSystem/BaseSystem.dmg -no_compat_check cs_enforcement_disable=1 cs_debug=1 amfi_allow_any_signature=1 amfi_get_out_of_my_way=1</string>
</dict>
</plist>
…the boot System volume isn’t protected by SIP any more, but is a cryptographically signed APFS snapshot. You can’t just disable SIP and mount the System volume for writing, and there’s no way to boot a live System volume which you can write to. Instead, if you need to make changes to the contents of the macOS System volume, you’ll need to disable its authentication in Recovery Mode, mount it, make any changes, create an APFS snapshot, then use that to boot from. Step-by-step instructions for doing this will no doubt emerge in coming days…
10 • Boot into your BS external installer. Check the SIP & NVRAM's boot args if needs be.
If you have a Penryn Core 2 Duo CPU, you apparently have to remove the Telemetry plugin:

– Open the recovery's Terminal and input diskutil list and mount the BS system volume. In my case, it was diskutil mount disk2s5. It's probably already mounted, but we're precise af here.

– Make the system volume writable with the command mount -uw "/Volumes/Big Sur". Use quotation marks (") as @ricoc90 pointed out. Otherwise, it will say the disk is a special or unknown file system. Bash terminal doesn't care about your feelings. It will literally bash your feelings.

– Navigate to Telemetry by changing to this directory cd /Volumes/Big\ Sur/System/Library/UserEventplugins. You can delete the file with rm -r or just rename it mv com.apple.telemetry.plugin com.apple.telemetry.plugin2

11 • Edit the Boot property lists in Big Sur's Preboot volume. Run diskutil list to find the volume, and then mount the Preboot volume: diskutil mount diskXsY.
Change these two com.apple.Boot.plist files to match the code below – located at:
1 /Volumes/Preboot/UUID-BigSurData/Library/SystemConfiguration/com.apple.Boot.plist
2 /Volumes/Preboot/UUID-BigSurData/Library/Preferences/SystemConfiguration/com.apple.Boot.plist
XML:
<?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>Kernel Cache</key>
    <string>boot\System\Library\KernelCollections\BootKernelExtensions.kc</string>
    <key>Kernel Flags</key>
    <string>-no_compat_check amfi_get_out_of_my_way=1</string>
</dict>
</plist>
In addition, copy the same plist file to 3 /Volumes/Preboot/UUID-BigSurData/System/Library/CoreServices/.

12 • Reboot into macOS Big Sur with caution.
Unfortunately, it will likely crash at the Choose your Language screen as soon as it boots up. It's possible that the Telemetry plugin is still copied/reused from a Big Sur snapshot booting (complicated sh*t), so get a small USB drive and download this USBOpenCoreAPFSloader3.app.zip. The boot loader will dynamically blocks the Telemetry plugin by loading the telemetrap.kext. All credits to @jackluke.

Go back to these three com.apple.Boot.plist files:
1 /Volumes/Preboot/UUID-BigSurData/Library/SystemConfiguration/com.apple.Boot.plist
2 /Volumes/Preboot/UUID-BigSurData/Library/Preferences/SystemConfiguration/com.apple.Boot.plist
3 /Volumes/Preboot/UUID-BigSurData/System/Library/CoreServices/

Change this <string>boot\System\Library\KernelCollections\BootKernelExtensions.kc</string>
To this <string>System\Library\PrelinkedKernels\prelinkedkernel</string> in all 3 plists
You have to change this string so USBOpenCore can utilise the telemetrap.kext.

Insert a thumb drive and open USBOpenCoreAPFSloader3. Follow the instructions to make an external USB bootloader. When it's finished, restart and hold the Option key. Select the unique EFI icon and choose your Big Sur volume.

13 • You can boot Big Sur without WiFi, speakers/mic or graphics acceleration.

Wi-Fi Fix
Follow @jackluke's instructions to copy his ready-made prelinkedkernel file into your Preboot volume.
I just made a new prelinkedkernel fix that should work for any "non-APFS and legacy USB Mac", it works without opencore, it includes the AppleHDA.kext (HighSierra) the patched IO80211Family.kext (for AirPortBrcm4331 Wifi cards) and Ethernet for Nvidia chipset Mac.

To install it directly from BigSur use the "BigSur prelinkedkernel fix4", from other APFS macOS use the "prelinkedkernel fix4 beta1", otherwise you can also replace it manually.
*Internal Audio Devices & Graphics Acceleration in progress*
 
Last edited:

quaccOS

macrumors regular
Apr 19, 2020
126
208
How old are you?
Just to say, I'm 18.
But I feel 38 when I'm on MacRumors Forums.

Edit: Welcome to Big Sur!
BS Welcome.gif

If anyone knows how to fix the BS panicking at startup, let me know
 
Last edited:

Joonyv

macrumors newbie
Jun 25, 2020
26
29
I have successfully installed on my mid 2012 MacBook Air. One question, when beta 2 comes out will we be able to just update or will we have to go through the entire installation proceed again? Another question please. After installing can I now enable SIP again or will it break the OS?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.