Follow the steps below to disable System Integrity Protection (SIP).
Start by booting to macOS Big Sur and opening a Terminal application window. You could try entering the command given below. If the command was accepted, then SIP would be disabled on the next boot.
sudo nvram csr-active-config=%7f%00%00%00
However, the command will not be accepted. Certain misspellings will be accepted, such as in the command given below.
sudo nvram Asr-active-config=%7f%00%00%00
Enter the above command, then proceed to the next step.
Shutdown macOS. In the
Setting
window for the virtual machine, selectStartup Disk
. Hold down the option key and select theRestart to Firmware…
button, as shown below.Select the
EFI Internal Shell
, as shown below.If desired, enter the command below to get full use of the window.
mode 128 40
Set the current filesystem to the EFI volume. This should be the mapped
fs0
filesystem, so you would enter the followingfs0:
Next, verify the label is
EFI
by entering the command below.vol
If wrong, then try
fs1:
,fs2:
,fs3:
, ....Enter the command below to save the
Asr-active-config
variable to the filecsr.bin
.dmpstore Asr-active-config -s csr.bin
Note: For more information on this command enter
help -b dmpstore
.Next, enter the command below to edit the
csr.bin
file. You will need to correct the spelling by replacing the letterA
with the letterc
. The can be done by typing a63
over the41
on the first line.hexedit csr.bin
The corrected file will appear as shown below. When finished save the changes and exit.
Note: The value of the variable is stored in the last 4 bytes of this file.
Enter the command below to create the
csr-active-config
variable in NVRAM.dmpstore -l csr.bin
SIP will now be disabled on the next boot of Big Sur. If desired, enter the command below to remove the
Asr-active-config
variable from NVRAM.dmpstore -d Asr-active-config
Enter the command below to leave the command shell.
exit
From the
Boot Manager
, selectMac OS X
to boot Big Sur.
Format of the csv.bin
File
Offset in Hex | Size in Decimal | Description |
---|---|---|
00-03 | 4 | Length of variable name |
04-27 | 36 | Variable name stored as null terminated UTF-16LE string |
28-37 | 16 | GUID of the variable |
38-3B | 4 | Attributes stored as 4 byte integer (See below) |
3C-3F | 4 | Length of the data |
40-43 | 4 | The 4 byte integer that comprises the data |
Attribute | Value | Description |
---|---|---|
NV | 1 | Non-volatile |
BS | 2 | Boot service Access |
RT | 4 | Runtime Access |
HR | 8 | Hardware Error Record |