15

I am using a Mid 2012 MacBook and recently upgraded it to OS X 10.11 El Capitan. I was having trouble with it's new SIP feature and wanted to disable it.

I tried to boot into OS X Internet Recovery using Cmd+R, which started Internet Recovery. When I tried csrutil disable in Terminal, it returned -bash: csrutil: command not found. Then I tried booting into Recovery HD and tried the same command in the recovery mode there to get the same error.

My question is how can I access csrutil command to disable SIP? Am I missing something?

Update I am putting the recovery terminal commands I have tried in the following screenshot. Kindly zoom it to see clearly

Terminal commands

4
  • how about /usr/bin/csrutil disable or /Volumes/your-OSX-10.11-disk/bin/csrutil disable?
    – enzo
    Oct 30, 2015 at 11:05
  • 1
    Related: apple.stackexchange.com/questions/208636/…
    – nohillside
    Oct 30, 2015 at 11:08
  • @patrix I have a recovery partition locally and tried to boot into that too, along with internet recovery.
    – noob
    Oct 30, 2015 at 11:12
  • @maetsoh Nope still the same error. There isn't any csrutil file in both location.
    – noob
    Oct 30, 2015 at 18:27

6 Answers 6

7

The netboot image loaded by booting to Internet Recovery Mode apparently doesn't contain the executable csrutil.

The OS X Base System loaded while booting to Recovery Mode should contain it though. By pressing cmdR a 2-step procedure is initiated: First the Mac is booted to Recovery HD and then after expanding BaseSystem.dmg to "OS X Base System" (which is the name of the mounted BaseSystem.dmg). If you see an animated globe after pressing cmdR your Mac probably doesn't have a Recovery HD.

Check the system version (or product version) of the Recovery HD/Base System:

To check the system version (1 in the screenshot below), boot to your main volume and enter the following in Terminal:

diskutil list #to get the disk identifier of your Recovery HD; usually it's disk0s3 with a size of ~650 MB
diskutil mount disk0s3
cat /Volumes/Recovery\ HD/com.apple.recovery.boot/SystemVersion.plist | grep -A 2 ProductVersion

Additionally you may mount BaseSystem.dmg and check the system version (2 in the screenshot below) there also:

open /Volumes/Recovery\ HD/com.apple.recovery.boot/BaseSystem.dmg
cat /Volumes/OS\ X\ Base\ System/System/Library/CoreServices/SystemVersion.plist | grep -A 2 ProductVersion

enter image description here

Download and reinstall the latest OS X El Capitan full installer if the system version of the base system is 10.10.x or lower.

4
  • I have tried these commands, but these also didn't work. Kindly check the updated question.
    – noob
    Nov 1, 2015 at 19:49
  • @noob As stated in my answer "...enter the following in Terminal booted to your main volume..." you have to boot to your main volume and then execute the commands.
    – klanomath
    Nov 1, 2015 at 19:54
  • Oh OK! I couldn't run the commands on the terminal, so I directly checked the SystemVersion.plist directly from finder. It's reporting ProductVersion as 10.10.3. So the recovery OS is older. How can I update it too?
    – noob
    Nov 1, 2015 at 19:59
  • @noob Simply reinstall OS X El Capitan 10.11.1 after downloading it from the app store booted to your main volume. None of your documents or settings will be overwritten or use the tool in this answer
    – klanomath
    Nov 1, 2015 at 20:02
2

Late to the party but had the same problem. Solved it by, at startup, hold down the option key, ⌥, until you can choose what to boot from and then click on the recovery one, should be Recovery-"version". Then you can follow the same steps as earlier stated - open terminal and write csrutil disable/enable.

2
  • Does not work!!
    – Iman Nia
    Sep 11, 2016 at 22:24
  • Yep, that solved it in my case, where I had multiple systems on several partitions and drives installled. Apr 4, 2017 at 17:14
0

When booted into recovery mode, if the following: sudo csrutil disable returns "command not found" try /usr/bin/csrutil disable instead

5
  • /usr/bin is always part of the PATH in the recovery environment.
    – pmdj
    Jun 9, 2019 at 9:16
  • 1
    If "command not found" is returned, then it follows that /usr/bin was NOT part of the path.
    – Bikeboy
    Jun 10, 2019 at 12:12
  • No, it follows that csrutil is not available in the asker’s version of the macOS recovery environment, which is true for the OS X 10.10 recovery environment and older. I had this issue when trying to disable SIP on a MacBook Pro Early 2013 and it turned out it was booting into an OSX 10.8 recovery environment. Solution was to boot from a macOS 10.14 USB installer medium.
    – pmdj
    Jun 10, 2019 at 12:15
  • When I encountered the "command not found" message when trying to access csrutil in recovery mode, as the originator of this question did, I simply changed the command to /usr/bin/csrutil disable and it worked perfectly. It worked for me, and apparently others as well. It's simple, easy, and does no harm to try. So before downvoting an answer, ask yourself: Is my environment the same as everyone else's? When you answer no, as any rational person would, you will have to acknowledge that my solution may work for some, and downvoting is both irrational and irresponsible to the community.
    – Bikeboy
    Jun 11, 2019 at 13:55
  • Worked for me. Not sure why the downvotes
    – Richard
    Jan 15, 2020 at 8:05
0

For me it helped to do a PRAM Reset, I had rEFInd installed for dual boot. The PRAM Reset also skipped my rEFInd boot routine, but finally I could get back into normal recovery mode and not only into internet recovery.

0

I had the same issue. When I was trying cmd R Lion Recover mode started in my machine. So I used a pen drive with high sierra installation and it worked. After that, opened Terminal and it should be alright

0

Use a OSX 10.11.x or later installer CD/DVD or USB.

I had the same issue until I tried a High Sierra installer USB.

You must log in to answer this question.

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